YES 12.471 H-Termination proof of /home/matraf/haskell/eval_FullyBlown_Fast/FiniteMap.hs
H-Termination of the given Haskell-Program with start terms could successfully be proven:



HASKELL
  ↳ LR

mainModule FiniteMap
  ((lookupWithDefaultFM :: Ord a => FiniteMap a b  ->  b  ->  a  ->  b) :: Ord a => FiniteMap a b  ->  b  ->  a  ->  b)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap a b = EmptyFM  | Branch a b Int (FiniteMap a b) (FiniteMap a b


  instance (Eq a, Eq b) => Eq (FiniteMap b a) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  fmToList :: FiniteMap b a  ->  [(b,a)]
fmToList fm foldFM (\key elt rest ->(key,elt: rest) [] fm

  foldFM :: (a  ->  b  ->  c  ->  c ->  c  ->  FiniteMap a b  ->  c
foldFM k z EmptyFM z
foldFM k z (Branch key elt _ fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a
lookupFM EmptyFM key Nothing
lookupFM (Branch key elt _ fm_l fm_rkey_to_find 
 | key_to_find < key = 
lookupFM fm_l key_to_find
 | key_to_find > key = 
lookupFM fm_r key_to_find
 | otherwise = 
Just elt

  lookupWithDefaultFM :: Ord a => FiniteMap a b  ->  b  ->  a  ->  b
lookupWithDefaultFM fm deflt key 
case lookupFM fm key of
  Nothing-> deflt
  Just elt-> elt

  sizeFM :: FiniteMap b a  ->  Int
sizeFM EmptyFM 0
sizeFM (Branch _ _ size _ _) size


module Maybe where
  import qualified FiniteMap
import qualified Prelude



Lambda Reductions:
The following Lambda expression
\keyeltrest→(key,elt: rest

is transformed to
fmToList0 key elt rest = (key,elt: rest



↳ HASKELL
  ↳ LR
HASKELL
      ↳ CR

mainModule FiniteMap
  ((lookupWithDefaultFM :: Ord b => FiniteMap b a  ->  a  ->  b  ->  a) :: Ord b => FiniteMap b a  ->  a  ->  b  ->  a)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap a b = EmptyFM  | Branch a b Int (FiniteMap a b) (FiniteMap a b


  instance (Eq a, Eq b) => Eq (FiniteMap b a) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  fmToList :: FiniteMap b a  ->  [(b,a)]
fmToList fm foldFM fmToList0 [] fm

  
fmToList0 key elt rest (key,elt: rest

  foldFM :: (a  ->  b  ->  c  ->  c ->  c  ->  FiniteMap a b  ->  c
foldFM k z EmptyFM z
foldFM k z (Branch key elt _ fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a
lookupFM EmptyFM key Nothing
lookupFM (Branch key elt _ fm_l fm_rkey_to_find 
 | key_to_find < key = 
lookupFM fm_l key_to_find
 | key_to_find > key = 
lookupFM fm_r key_to_find
 | otherwise = 
Just elt

  lookupWithDefaultFM :: Ord b => FiniteMap b a  ->  a  ->  b  ->  a
lookupWithDefaultFM fm deflt key 
case lookupFM fm key of
  Nothing-> deflt
  Just elt-> elt

  sizeFM :: FiniteMap b a  ->  Int
sizeFM EmptyFM 0
sizeFM (Branch _ _ size _ _) size


module Maybe where
  import qualified FiniteMap
import qualified Prelude



Case Reductions:
The following Case expression
case lookupFM fm key of
 Nothing → deflt
 Just elt → elt

is transformed to
lookupWithDefaultFM0 deflt Nothing = deflt
lookupWithDefaultFM0 deflt (Just elt) = elt

The following Case expression
case compare x y of
 EQ → o
 LT → LT
 GT → GT

is transformed to
primCompAux0 o EQ = o
primCompAux0 o LT = LT
primCompAux0 o GT = GT



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
HASKELL
          ↳ IFR

mainModule FiniteMap
  ((lookupWithDefaultFM :: Ord b => FiniteMap b a  ->  a  ->  b  ->  a) :: Ord b => FiniteMap b a  ->  a  ->  b  ->  a)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap b a = EmptyFM  | Branch b a Int (FiniteMap b a) (FiniteMap b a


  instance (Eq a, Eq b) => Eq (FiniteMap a b) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  fmToList :: FiniteMap b a  ->  [(b,a)]
fmToList fm foldFM fmToList0 [] fm

  
fmToList0 key elt rest (key,elt: rest

  foldFM :: (b  ->  c  ->  a  ->  a ->  a  ->  FiniteMap b c  ->  a
foldFM k z EmptyFM z
foldFM k z (Branch key elt _ fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  lookupFM :: Ord a => FiniteMap a b  ->  a  ->  Maybe b
lookupFM EmptyFM key Nothing
lookupFM (Branch key elt _ fm_l fm_rkey_to_find 
 | key_to_find < key = 
lookupFM fm_l key_to_find
 | key_to_find > key = 
lookupFM fm_r key_to_find
 | otherwise = 
Just elt

  lookupWithDefaultFM :: Ord a => FiniteMap a b  ->  b  ->  a  ->  b
lookupWithDefaultFM fm deflt key lookupWithDefaultFM0 deflt (lookupFM fm key)

  
lookupWithDefaultFM0 deflt Nothing deflt
lookupWithDefaultFM0 deflt (Just eltelt

  sizeFM :: FiniteMap a b  ->  Int
sizeFM EmptyFM 0
sizeFM (Branch _ _ size _ _) size


module Maybe where
  import qualified FiniteMap
import qualified Prelude



If Reductions:
The following If expression
if primGEqNatS x y then Succ (primDivNatS (primMinusNatS x y) (Succ y)) else Zero

is transformed to
primDivNatS0 x y True = Succ (primDivNatS (primMinusNatS x y) (Succ y))
primDivNatS0 x y False = Zero

The following If expression
if primGEqNatS x y then primModNatS (primMinusNatS x y) (Succ y) else Succ x

is transformed to
primModNatS0 x y True = primModNatS (primMinusNatS x y) (Succ y)
primModNatS0 x y False = Succ x



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
HASKELL
              ↳ BR

mainModule FiniteMap
  ((lookupWithDefaultFM :: Ord b => FiniteMap b a  ->  a  ->  b  ->  a) :: Ord b => FiniteMap b a  ->  a  ->  b  ->  a)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap a b = EmptyFM  | Branch a b Int (FiniteMap a b) (FiniteMap a b


  instance (Eq a, Eq b) => Eq (FiniteMap b a) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  fmToList :: FiniteMap b a  ->  [(b,a)]
fmToList fm foldFM fmToList0 [] fm

  
fmToList0 key elt rest (key,elt: rest

  foldFM :: (b  ->  a  ->  c  ->  c ->  c  ->  FiniteMap b a  ->  c
foldFM k z EmptyFM z
foldFM k z (Branch key elt _ fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a
lookupFM EmptyFM key Nothing
lookupFM (Branch key elt _ fm_l fm_rkey_to_find 
 | key_to_find < key = 
lookupFM fm_l key_to_find
 | key_to_find > key = 
lookupFM fm_r key_to_find
 | otherwise = 
Just elt

  lookupWithDefaultFM :: Ord b => FiniteMap b a  ->  a  ->  b  ->  a
lookupWithDefaultFM fm deflt key lookupWithDefaultFM0 deflt (lookupFM fm key)

  
lookupWithDefaultFM0 deflt Nothing deflt
lookupWithDefaultFM0 deflt (Just eltelt

  sizeFM :: FiniteMap b a  ->  Int
sizeFM EmptyFM 0
sizeFM (Branch _ _ size _ _) size


module Maybe where
  import qualified FiniteMap
import qualified Prelude



Replaced joker patterns by fresh variables and removed binding patterns.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
HASKELL
                  ↳ COR

mainModule FiniteMap
  ((lookupWithDefaultFM :: Ord b => FiniteMap b a  ->  a  ->  b  ->  a) :: Ord b => FiniteMap b a  ->  a  ->  b  ->  a)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap a b = EmptyFM  | Branch a b Int (FiniteMap a b) (FiniteMap a b


  instance (Eq a, Eq b) => Eq (FiniteMap a b) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  fmToList :: FiniteMap b a  ->  [(b,a)]
fmToList fm foldFM fmToList0 [] fm

  
fmToList0 key elt rest (key,elt: rest

  foldFM :: (c  ->  a  ->  b  ->  b ->  b  ->  FiniteMap c a  ->  b
foldFM k z EmptyFM z
foldFM k z (Branch key elt vw fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a
lookupFM EmptyFM key Nothing
lookupFM (Branch key elt vx fm_l fm_rkey_to_find 
 | key_to_find < key = 
lookupFM fm_l key_to_find
 | key_to_find > key = 
lookupFM fm_r key_to_find
 | otherwise = 
Just elt

  lookupWithDefaultFM :: Ord a => FiniteMap a b  ->  b  ->  a  ->  b
lookupWithDefaultFM fm deflt key lookupWithDefaultFM0 deflt (lookupFM fm key)

  
lookupWithDefaultFM0 deflt Nothing deflt
lookupWithDefaultFM0 deflt (Just eltelt

  sizeFM :: FiniteMap b a  ->  Int
sizeFM EmptyFM 0
sizeFM (Branch vy vz size wu wvsize


module Maybe where
  import qualified FiniteMap
import qualified Prelude



Cond Reductions:
The following Function with conditions
lookupFM EmptyFM key = Nothing
lookupFM (Branch key elt vx fm_l fm_rkey_to_find
 | key_to_find < key
 = lookupFM fm_l key_to_find
 | key_to_find > key
 = lookupFM fm_r key_to_find
 | otherwise
 = Just elt

is transformed to
lookupFM EmptyFM key = lookupFM4 EmptyFM key
lookupFM (Branch key elt vx fm_l fm_rkey_to_find = lookupFM3 (Branch key elt vx fm_l fm_rkey_to_find

lookupFM2 key elt vx fm_l fm_r key_to_find True = lookupFM fm_l key_to_find
lookupFM2 key elt vx fm_l fm_r key_to_find False = lookupFM1 key elt vx fm_l fm_r key_to_find (key_to_find > key)

lookupFM0 key elt vx fm_l fm_r key_to_find True = Just elt

lookupFM1 key elt vx fm_l fm_r key_to_find True = lookupFM fm_r key_to_find
lookupFM1 key elt vx fm_l fm_r key_to_find False = lookupFM0 key elt vx fm_l fm_r key_to_find otherwise

lookupFM3 (Branch key elt vx fm_l fm_rkey_to_find = lookupFM2 key elt vx fm_l fm_r key_to_find (key_to_find < key)

lookupFM4 EmptyFM key = Nothing
lookupFM4 vvu vvv = lookupFM3 vvu vvv

The following Function with conditions
compare x y
 | x == y
 = EQ
 | x <= y
 = LT
 | otherwise
 = GT

is transformed to
compare x y = compare3 x y

compare0 x y True = GT

compare1 x y True = LT
compare1 x y False = compare0 x y otherwise

compare2 x y True = EQ
compare2 x y False = compare1 x y (x <= y)

compare3 x y = compare2 x y (x == y)

The following Function with conditions
gcd' x 0 = x
gcd' x y = gcd' y (x `rem` y)

is transformed to
gcd' x vvw = gcd'2 x vvw
gcd' x y = gcd'0 x y

gcd'0 x y = gcd' y (x `rem` y)

gcd'1 True x vvw = x
gcd'1 vvx vvy vvz = gcd'0 vvy vvz

gcd'2 x vvw = gcd'1 (vvw == 0) x vvw
gcd'2 vwu vwv = gcd'0 vwu vwv

The following Function with conditions
gcd 0 0 = error []
gcd x y = 
gcd' (abs x) (abs y)
where 
gcd' x 0 = x
gcd' x y = gcd' y (x `rem` y)

is transformed to
gcd vww vwx = gcd3 vww vwx
gcd x y = gcd0 x y

gcd0 x y = 
gcd' (abs x) (abs y)
where 
gcd' x vvw = gcd'2 x vvw
gcd' x y = gcd'0 x y
gcd'0 x y = gcd' y (x `rem` y)
gcd'1 True x vvw = x
gcd'1 vvx vvy vvz = gcd'0 vvy vvz
gcd'2 x vvw = gcd'1 (vvw == 0) x vvw
gcd'2 vwu vwv = gcd'0 vwu vwv

gcd1 True vww vwx = error []
gcd1 vwy vwz vxu = gcd0 vwz vxu

gcd2 True vww vwx = gcd1 (vwx == 0) vww vwx
gcd2 vxv vxw vxx = gcd0 vxw vxx

gcd3 vww vwx = gcd2 (vww == 0) vww vwx
gcd3 vxy vxz = gcd0 vxy vxz

The following Function with conditions
absReal x
 | x >= 0
 = x
 | otherwise
 = `negate` x

is transformed to
absReal x = absReal2 x

absReal0 x True = `negate` x

absReal1 x True = x
absReal1 x False = absReal0 x otherwise

absReal2 x = absReal1 x (x >= 0)

The following Function with conditions
undefined 
 | False
 = undefined

is transformed to
undefined  = undefined1

undefined0 True = undefined

undefined1  = undefined0 False

The following Function with conditions
reduce x y
 | y == 0
 = error []
 | otherwise
 = x `quot` d :% (y `quot` d)
where 
d  = gcd x y

is transformed to
reduce x y = reduce2 x y

reduce2 x y = 
reduce1 x y (y == 0)
where 
d  = gcd x y
reduce0 x y True = x `quot` d :% (y `quot` d)
reduce1 x y True = error []
reduce1 x y False = reduce0 x y otherwise



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
HASKELL
                      ↳ LetRed

mainModule FiniteMap
  ((lookupWithDefaultFM :: Ord a => FiniteMap a b  ->  b  ->  a  ->  b) :: Ord a => FiniteMap a b  ->  b  ->  a  ->  b)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap b a = EmptyFM  | Branch b a Int (FiniteMap b a) (FiniteMap b a


  instance (Eq a, Eq b) => Eq (FiniteMap a b) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  fmToList :: FiniteMap b a  ->  [(b,a)]
fmToList fm foldFM fmToList0 [] fm

  
fmToList0 key elt rest (key,elt: rest

  foldFM :: (c  ->  a  ->  b  ->  b ->  b  ->  FiniteMap c a  ->  b
foldFM k z EmptyFM z
foldFM k z (Branch key elt vw fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a
lookupFM EmptyFM key lookupFM4 EmptyFM key
lookupFM (Branch key elt vx fm_l fm_rkey_to_find lookupFM3 (Branch key elt vx fm_l fm_r) key_to_find

  
lookupFM0 key elt vx fm_l fm_r key_to_find True Just elt

  
lookupFM1 key elt vx fm_l fm_r key_to_find True lookupFM fm_r key_to_find
lookupFM1 key elt vx fm_l fm_r key_to_find False lookupFM0 key elt vx fm_l fm_r key_to_find otherwise

  
lookupFM2 key elt vx fm_l fm_r key_to_find True lookupFM fm_l key_to_find
lookupFM2 key elt vx fm_l fm_r key_to_find False lookupFM1 key elt vx fm_l fm_r key_to_find (key_to_find > key)

  
lookupFM3 (Branch key elt vx fm_l fm_rkey_to_find lookupFM2 key elt vx fm_l fm_r key_to_find (key_to_find < key)

  
lookupFM4 EmptyFM key Nothing
lookupFM4 vvu vvv lookupFM3 vvu vvv

  lookupWithDefaultFM :: Ord a => FiniteMap a b  ->  b  ->  a  ->  b
lookupWithDefaultFM fm deflt key lookupWithDefaultFM0 deflt (lookupFM fm key)

  
lookupWithDefaultFM0 deflt Nothing deflt
lookupWithDefaultFM0 deflt (Just eltelt

  sizeFM :: FiniteMap b a  ->  Int
sizeFM EmptyFM 0
sizeFM (Branch vy vz size wu wvsize


module Maybe where
  import qualified FiniteMap
import qualified Prelude



Let/Where Reductions:
The bindings of the following Let/Where expression
reduce1 x y (y == 0)
where 
d  = gcd x y
reduce0 x y True = x `quot` d :% (y `quot` d)
reduce1 x y True = error []
reduce1 x y False = reduce0 x y otherwise

are unpacked to the following functions on top level
reduce2Reduce1 vyu vyv x y True = error []
reduce2Reduce1 vyu vyv x y False = reduce2Reduce0 vyu vyv x y otherwise

reduce2Reduce0 vyu vyv x y True = x `quot` reduce2D vyu vyv :% (y `quot` reduce2D vyu vyv)

reduce2D vyu vyv = gcd vyu vyv

The bindings of the following Let/Where expression
gcd' (abs x) (abs y)
where 
gcd' x vvw = gcd'2 x vvw
gcd' x y = gcd'0 x y
gcd'0 x y = gcd' y (x `rem` y)
gcd'1 True x vvw = x
gcd'1 vvx vvy vvz = gcd'0 vvy vvz
gcd'2 x vvw = gcd'1 (vvw == 0) x vvw
gcd'2 vwu vwv = gcd'0 vwu vwv

are unpacked to the following functions on top level
gcd0Gcd'0 x y = gcd0Gcd' y (x `rem` y)

gcd0Gcd'2 x vvw = gcd0Gcd'1 (vvw == 0) x vvw
gcd0Gcd'2 vwu vwv = gcd0Gcd'0 vwu vwv

gcd0Gcd'1 True x vvw = x
gcd0Gcd'1 vvx vvy vvz = gcd0Gcd'0 vvy vvz

gcd0Gcd' x vvw = gcd0Gcd'2 x vvw
gcd0Gcd' x y = gcd0Gcd'0 x y



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
HASKELL
                          ↳ NumRed

mainModule FiniteMap
  ((lookupWithDefaultFM :: Ord a => FiniteMap a b  ->  b  ->  a  ->  b) :: Ord a => FiniteMap a b  ->  b  ->  a  ->  b)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap b a = EmptyFM  | Branch b a Int (FiniteMap b a) (FiniteMap b a


  instance (Eq a, Eq b) => Eq (FiniteMap b a) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  fmToList :: FiniteMap a b  ->  [(a,b)]
fmToList fm foldFM fmToList0 [] fm

  
fmToList0 key elt rest (key,elt: rest

  foldFM :: (b  ->  a  ->  c  ->  c ->  c  ->  FiniteMap b a  ->  c
foldFM k z EmptyFM z
foldFM k z (Branch key elt vw fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  lookupFM :: Ord a => FiniteMap a b  ->  a  ->  Maybe b
lookupFM EmptyFM key lookupFM4 EmptyFM key
lookupFM (Branch key elt vx fm_l fm_rkey_to_find lookupFM3 (Branch key elt vx fm_l fm_r) key_to_find

  
lookupFM0 key elt vx fm_l fm_r key_to_find True Just elt

  
lookupFM1 key elt vx fm_l fm_r key_to_find True lookupFM fm_r key_to_find
lookupFM1 key elt vx fm_l fm_r key_to_find False lookupFM0 key elt vx fm_l fm_r key_to_find otherwise

  
lookupFM2 key elt vx fm_l fm_r key_to_find True lookupFM fm_l key_to_find
lookupFM2 key elt vx fm_l fm_r key_to_find False lookupFM1 key elt vx fm_l fm_r key_to_find (key_to_find > key)

  
lookupFM3 (Branch key elt vx fm_l fm_rkey_to_find lookupFM2 key elt vx fm_l fm_r key_to_find (key_to_find < key)

  
lookupFM4 EmptyFM key Nothing
lookupFM4 vvu vvv lookupFM3 vvu vvv

  lookupWithDefaultFM :: Ord b => FiniteMap b a  ->  a  ->  b  ->  a
lookupWithDefaultFM fm deflt key lookupWithDefaultFM0 deflt (lookupFM fm key)

  
lookupWithDefaultFM0 deflt Nothing deflt
lookupWithDefaultFM0 deflt (Just eltelt

  sizeFM :: FiniteMap b a  ->  Int
sizeFM EmptyFM 0
sizeFM (Branch vy vz size wu wvsize


module Maybe where
  import qualified FiniteMap
import qualified Prelude



Num Reduction: All numbers are transformed to thier corresponding representation with Pos, Neg, Succ and Zero.

↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
HASKELL
                              ↳ Narrow

mainModule FiniteMap
  (lookupWithDefaultFM :: Ord b => FiniteMap b a  ->  a  ->  b  ->  a)

module FiniteMap where
  import qualified Maybe
import qualified Prelude

  data FiniteMap a b = EmptyFM  | Branch a b Int (FiniteMap a b) (FiniteMap a b


  instance (Eq a, Eq b) => Eq (FiniteMap b a) where 
   
(==) fm_1 fm_2 sizeFM fm_1 == sizeFM fm_2 && fmToList fm_1 == fmToList fm_2

  fmToList :: FiniteMap b a  ->  [(b,a)]
fmToList fm foldFM fmToList0 [] fm

  
fmToList0 key elt rest (key,elt: rest

  foldFM :: (a  ->  b  ->  c  ->  c ->  c  ->  FiniteMap a b  ->  c
foldFM k z EmptyFM z
foldFM k z (Branch key elt vw fm_l fm_rfoldFM k (k key elt (foldFM k z fm_r)) fm_l

  lookupFM :: Ord b => FiniteMap b a  ->  b  ->  Maybe a
lookupFM EmptyFM key lookupFM4 EmptyFM key
lookupFM (Branch key elt vx fm_l fm_rkey_to_find lookupFM3 (Branch key elt vx fm_l fm_r) key_to_find

  
lookupFM0 key elt vx fm_l fm_r key_to_find True Just elt

  
lookupFM1 key elt vx fm_l fm_r key_to_find True lookupFM fm_r key_to_find
lookupFM1 key elt vx fm_l fm_r key_to_find False lookupFM0 key elt vx fm_l fm_r key_to_find otherwise

  
lookupFM2 key elt vx fm_l fm_r key_to_find True lookupFM fm_l key_to_find
lookupFM2 key elt vx fm_l fm_r key_to_find False lookupFM1 key elt vx fm_l fm_r key_to_find (key_to_find > key)

  
lookupFM3 (Branch key elt vx fm_l fm_rkey_to_find lookupFM2 key elt vx fm_l fm_r key_to_find (key_to_find < key)

  
lookupFM4 EmptyFM key Nothing
lookupFM4 vvu vvv lookupFM3 vvu vvv

  lookupWithDefaultFM :: Ord a => FiniteMap a b  ->  b  ->  a  ->  b
lookupWithDefaultFM fm deflt key lookupWithDefaultFM0 deflt (lookupFM fm key)

  
lookupWithDefaultFM0 deflt Nothing deflt
lookupWithDefaultFM0 deflt (Just eltelt

  sizeFM :: FiniteMap b a  ->  Int
sizeFM EmptyFM Pos Zero
sizeFM (Branch vy vz size wu wvsize


module Maybe where
  import qualified FiniteMap
import qualified Prelude



Haskell To QDPs


↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_primEqNat(Succ(vyw5000), Succ(vyw30000)) → new_primEqNat(vyw5000, vyw30000)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_primPlusNat(Succ(vyw19800), Succ(vyw301000)) → new_primPlusNat(vyw19800, vyw301000)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_primMulNat(Succ(vyw5100), Succ(vyw30100)) → new_primMulNat(vyw5100, Succ(vyw30100))

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_esEs1(Right(vyw500), Right(vyw3000), hd, app(ty_Maybe, bae)) → new_esEs3(vyw500, vyw3000, bae)
new_esEs(@3(vyw500, vyw501, vyw502), @3(vyw3000, vyw3001, vyw3002), app(ty_Maybe, ef), ba, cf) → new_esEs3(vyw500, vyw3000, ef)
new_esEs0(:(vyw500, vyw501), :(vyw3000, vyw3001), app(ty_Maybe, ga)) → new_esEs3(vyw500, vyw3000, ga)
new_esEs(@3(vyw500, vyw501, vyw502), @3(vyw3000, vyw3001, vyw3002), h, app(ty_[], cg), cf) → new_esEs0(vyw501, vyw3001, cg)
new_esEs1(Left(vyw500), Left(vyw3000), app(ty_[], gf), ge) → new_esEs0(vyw500, vyw3000, gf)
new_esEs2(@2(vyw500, vyw501), @2(vyw3000, vyw3001), app(ty_[], bcd), bcc) → new_esEs0(vyw500, vyw3000, bcd)
new_esEs2(@2(vyw500, vyw501), @2(vyw3000, vyw3001), baf, app(app(ty_@2, bbe), bbf)) → new_esEs2(vyw501, vyw3001, bbe, bbf)
new_esEs(@3(vyw500, vyw501, vyw502), @3(vyw3000, vyw3001, vyw3002), h, ba, app(ty_[], be)) → new_esEs0(vyw502, vyw3002, be)
new_esEs2(@2(vyw500, vyw501), @2(vyw3000, vyw3001), app(ty_Maybe, bda), bcc) → new_esEs3(vyw500, vyw3000, bda)
new_esEs0(:(vyw500, vyw501), :(vyw3000, vyw3001), app(app(app(ty_@3, eh), fa), fb)) → new_esEs(vyw500, vyw3000, eh, fa, fb)
new_esEs(@3(vyw500, vyw501, vyw502), @3(vyw3000, vyw3001, vyw3002), h, app(app(ty_Either, da), db), cf) → new_esEs1(vyw501, vyw3001, da, db)
new_esEs2(@2(vyw500, vyw501), @2(vyw3000, vyw3001), baf, app(ty_Maybe, bbg)) → new_esEs3(vyw501, vyw3001, bbg)
new_esEs2(@2(vyw500, vyw501), @2(vyw3000, vyw3001), app(app(ty_@2, bcg), bch), bcc) → new_esEs2(vyw500, vyw3000, bcg, bch)
new_esEs1(Right(vyw500), Right(vyw3000), hd, app(ty_[], hh)) → new_esEs0(vyw500, vyw3000, hh)
new_esEs(@3(vyw500, vyw501, vyw502), @3(vyw3000, vyw3001, vyw3002), app(app(app(ty_@3, df), dg), dh), ba, cf) → new_esEs(vyw500, vyw3000, df, dg, dh)
new_esEs1(Left(vyw500), Left(vyw3000), app(app(ty_Either, gg), gh), ge) → new_esEs1(vyw500, vyw3000, gg, gh)
new_esEs3(Just(vyw500), Just(vyw3000), app(app(app(ty_@3, bdb), bdc), bdd)) → new_esEs(vyw500, vyw3000, bdb, bdc, bdd)
new_esEs2(@2(vyw500, vyw501), @2(vyw3000, vyw3001), baf, app(app(app(ty_@3, bag), bah), bba)) → new_esEs(vyw501, vyw3001, bag, bah, bba)
new_esEs3(Just(vyw500), Just(vyw3000), app(ty_[], bde)) → new_esEs0(vyw500, vyw3000, bde)
new_esEs1(Right(vyw500), Right(vyw3000), hd, app(app(ty_Either, baa), bab)) → new_esEs1(vyw500, vyw3000, baa, bab)
new_esEs(@3(vyw500, vyw501, vyw502), @3(vyw3000, vyw3001, vyw3002), app(app(ty_Either, eb), ec), ba, cf) → new_esEs1(vyw500, vyw3000, eb, ec)
new_esEs1(Right(vyw500), Right(vyw3000), hd, app(app(app(ty_@3, he), hf), hg)) → new_esEs(vyw500, vyw3000, he, hf, hg)
new_esEs1(Left(vyw500), Left(vyw3000), app(app(ty_@2, ha), hb), ge) → new_esEs2(vyw500, vyw3000, ha, hb)
new_esEs3(Just(vyw500), Just(vyw3000), app(app(ty_@2, bdh), bea)) → new_esEs2(vyw500, vyw3000, bdh, bea)
new_esEs2(@2(vyw500, vyw501), @2(vyw3000, vyw3001), baf, app(app(ty_Either, bbc), bbd)) → new_esEs1(vyw501, vyw3001, bbc, bbd)
new_esEs(@3(vyw500, vyw501, vyw502), @3(vyw3000, vyw3001, vyw3002), app(app(ty_@2, ed), ee), ba, cf) → new_esEs2(vyw500, vyw3000, ed, ee)
new_esEs2(@2(vyw500, vyw501), @2(vyw3000, vyw3001), app(app(app(ty_@3, bbh), bca), bcb), bcc) → new_esEs(vyw500, vyw3000, bbh, bca, bcb)
new_esEs(@3(vyw500, vyw501, vyw502), @3(vyw3000, vyw3001, vyw3002), h, app(app(ty_@2, dc), dd), cf) → new_esEs2(vyw501, vyw3001, dc, dd)
new_esEs(@3(vyw500, vyw501, vyw502), @3(vyw3000, vyw3001, vyw3002), h, app(app(app(ty_@3, cc), cd), ce), cf) → new_esEs(vyw501, vyw3001, cc, cd, ce)
new_esEs(@3(vyw500, vyw501, vyw502), @3(vyw3000, vyw3001, vyw3002), h, ba, app(app(ty_Either, bf), bg)) → new_esEs1(vyw502, vyw3002, bf, bg)
new_esEs(@3(vyw500, vyw501, vyw502), @3(vyw3000, vyw3001, vyw3002), h, app(ty_Maybe, de), cf) → new_esEs3(vyw501, vyw3001, de)
new_esEs1(Right(vyw500), Right(vyw3000), hd, app(app(ty_@2, bac), bad)) → new_esEs2(vyw500, vyw3000, bac, bad)
new_esEs3(Just(vyw500), Just(vyw3000), app(ty_Maybe, beb)) → new_esEs3(vyw500, vyw3000, beb)
new_esEs1(Left(vyw500), Left(vyw3000), app(app(app(ty_@3, gb), gc), gd), ge) → new_esEs(vyw500, vyw3000, gb, gc, gd)
new_esEs(@3(vyw500, vyw501, vyw502), @3(vyw3000, vyw3001, vyw3002), h, ba, app(ty_Maybe, cb)) → new_esEs3(vyw502, vyw3002, cb)
new_esEs0(:(vyw500, vyw501), :(vyw3000, vyw3001), app(app(ty_Either, fd), ff)) → new_esEs1(vyw500, vyw3000, fd, ff)
new_esEs(@3(vyw500, vyw501, vyw502), @3(vyw3000, vyw3001, vyw3002), app(ty_[], ea), ba, cf) → new_esEs0(vyw500, vyw3000, ea)
new_esEs(@3(vyw500, vyw501, vyw502), @3(vyw3000, vyw3001, vyw3002), h, ba, app(app(ty_@2, bh), ca)) → new_esEs2(vyw502, vyw3002, bh, ca)
new_esEs1(Left(vyw500), Left(vyw3000), app(ty_Maybe, hc), ge) → new_esEs3(vyw500, vyw3000, hc)
new_esEs2(@2(vyw500, vyw501), @2(vyw3000, vyw3001), baf, app(ty_[], bbb)) → new_esEs0(vyw501, vyw3001, bbb)
new_esEs0(:(vyw500, vyw501), :(vyw3000, vyw3001), app(ty_[], fc)) → new_esEs0(vyw500, vyw3000, fc)
new_esEs3(Just(vyw500), Just(vyw3000), app(app(ty_Either, bdf), bdg)) → new_esEs1(vyw500, vyw3000, bdf, bdg)
new_esEs0(:(vyw500, vyw501), :(vyw3000, vyw3001), app(app(ty_@2, fg), fh)) → new_esEs2(vyw500, vyw3000, fg, fh)
new_esEs2(@2(vyw500, vyw501), @2(vyw3000, vyw3001), app(app(ty_Either, bce), bcf), bcc) → new_esEs1(vyw500, vyw3000, bce, bcf)
new_esEs0(:(vyw500, vyw501), :(vyw3000, vyw3001), eg) → new_esEs0(vyw501, vyw3001, eg)
new_esEs(@3(vyw500, vyw501, vyw502), @3(vyw3000, vyw3001, vyw3002), h, ba, app(app(app(ty_@3, bb), bc), bd)) → new_esEs(vyw502, vyw3002, bb, bc, bd)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_primCmpNat(Succ(vyw500), Succ(vyw3000)) → new_primCmpNat(vyw500, vyw3000)

R is empty.
Q is empty.
We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof
                                  ↳ QDP

Q DP problem:
The TRS P consists of the following rules:

new_compare1(Right(vyw50), Right(vyw300), bag, bah) → new_compare21(vyw50, vyw300, new_esEs5(vyw50, vyw300, bah), bag, bah)
new_compare22(vyw105, vyw106, vyw107, vyw108, vyw109, vyw110, False, app(app(app(ty_@3, bff), bfg), bfh), bfd, bfe) → new_lt0(vyw105, vyw108, bff, bfg, bfh)
new_compare20(@2(vyw490, vyw491), @2(vyw500, vyw501), False, app(app(ty_@2, bcc), app(ty_Maybe, bdb)), bba) → new_ltEs2(vyw491, vyw501, bdb)
new_ltEs(Right(vyw490), Right(vyw500), cb, app(ty_[], da)) → new_ltEs1(vyw490, vyw500, da)
new_ltEs(Right(vyw490), Right(vyw500), cb, app(ty_Maybe, db)) → new_ltEs2(vyw490, vyw500, db)
new_compare20(Right(vyw490), Right(vyw500), False, app(app(ty_Either, cb), app(app(ty_@2, dc), dd)), bba) → new_ltEs3(vyw490, vyw500, dc, dd)
new_compare22(vyw105, vyw106, vyw107, vyw108, vyw109, vyw110, False, bge, app(ty_Maybe, cae), bfe) → new_lt2(vyw106, vyw109, cae)
new_ltEs(Right(vyw490), Right(vyw500), cb, app(app(ty_Either, cc), cd)) → new_ltEs(vyw490, vyw500, cc, cd)
new_compare1(Left(vyw50), Left(vyw300), bag, bah) → new_compare20(vyw50, vyw300, new_esEs4(vyw50, vyw300, bag), bag, bah)
new_compare2(@3(vyw50, vyw51, vyw52), @3(vyw300, vyw301, vyw302), beg, beh, bfa) → new_compare22(vyw50, vyw51, vyw52, vyw300, vyw301, vyw302, new_asAs(new_esEs8(vyw50, vyw300, beg), new_asAs(new_esEs7(vyw51, vyw301, beh), new_esEs6(vyw52, vyw302, bfa))), beg, beh, bfa)
new_compare20(@2(vyw490, vyw491), @2(vyw500, vyw501), False, app(app(ty_@2, bcc), app(ty_[], bda)), bba) → new_ltEs1(vyw491, vyw501, bda)
new_ltEs0(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), app(ty_Maybe, ha), df, fb) → new_lt2(vyw490, vyw500, ha)
new_lt1(:(vyw50, vyw51), :(vyw300, vyw301), he) → new_primCompAux(vyw50, vyw300, new_compare0(vyw51, vyw301, he), he)
new_compare23(vyw83, vyw84, False, app(ty_Maybe, cbg)) → new_ltEs2(vyw83, vyw84, cbg)
new_compare22(vyw105, vyw106, vyw107, vyw108, vyw109, vyw110, False, app(ty_[], bga), bfd, bfe) → new_lt1(vyw105, vyw108, bga)
new_compare20(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), False, app(app(app(ty_@3, de), app(ty_[], fg)), fb), bba) → new_lt1(vyw491, vyw501, fg)
new_primCompAux(vyw50, vyw300, vyw44, app(ty_[], bac)) → new_compare(vyw50, vyw300, bac)
new_compare21(vyw56, vyw57, False, ceh, app(ty_Maybe, cfg)) → new_ltEs2(vyw56, vyw57, cfg)
new_lt2(Just(vyw50), Just(vyw300), cah) → new_compare23(vyw50, vyw300, new_esEs9(vyw50, vyw300, cah), cah)
new_ltEs0(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), de, df, app(app(ty_@2, ef), eg)) → new_ltEs3(vyw492, vyw502, ef, eg)
new_ltEs2(Just(vyw490), Just(vyw500), app(app(app(ty_@3, bbd), bbe), bbf)) → new_ltEs0(vyw490, vyw500, bbd, bbe, bbf)
new_lt(Right(vyw50), Right(vyw300), bag, bah) → new_compare21(vyw50, vyw300, new_esEs5(vyw50, vyw300, bah), bag, bah)
new_ltEs(Left(vyw490), Left(vyw500), app(app(ty_@2, bh), ca), bb) → new_ltEs3(vyw490, vyw500, bh, ca)
new_compare20(Right(vyw490), Right(vyw500), False, app(app(ty_Either, cb), app(ty_[], da)), bba) → new_ltEs1(vyw490, vyw500, da)
new_ltEs3(@2(vyw490, vyw491), @2(vyw500, vyw501), bcc, app(app(app(ty_@3, bcf), bcg), bch)) → new_ltEs0(vyw491, vyw501, bcf, bcg, bch)
new_compare22(vyw105, vyw106, vyw107, vyw108, vyw109, vyw110, False, app(ty_Maybe, bgb), bfd, bfe) → new_lt2(vyw105, vyw108, bgb)
new_ltEs3(@2(vyw490, vyw491), @2(vyw500, vyw501), bcc, app(app(ty_@2, bdc), bdd)) → new_ltEs3(vyw491, vyw501, bdc, bdd)
new_lt1(:(vyw50, vyw51), :(vyw300, vyw301), he) → new_compare(vyw51, vyw301, he)
new_compare20(Right(vyw490), Right(vyw500), False, app(app(ty_Either, cb), app(app(ty_Either, cc), cd)), bba) → new_ltEs(vyw490, vyw500, cc, cd)
new_ltEs2(Just(vyw490), Just(vyw500), app(ty_[], bbg)) → new_ltEs1(vyw490, vyw500, bbg)
new_compare20(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), False, app(app(app(ty_@3, de), app(ty_Maybe, fh)), fb), bba) → new_lt2(vyw491, vyw501, fh)
new_compare24(vyw118, vyw119, vyw120, vyw121, False, app(app(app(ty_@3, cea), ceb), cec), cdh) → new_lt0(vyw118, vyw120, cea, ceb, cec)
new_compare20(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), False, app(app(app(ty_@3, de), df), app(ty_[], ed)), bba) → new_ltEs1(vyw492, vyw502, ed)
new_compare22(vyw105, vyw106, vyw107, vyw108, vyw109, vyw110, False, bge, app(app(ty_@2, caf), cag), bfe) → new_lt3(vyw106, vyw109, caf, cag)
new_ltEs(Right(vyw490), Right(vyw500), cb, app(app(ty_@2, dc), dd)) → new_ltEs3(vyw490, vyw500, dc, dd)
new_ltEs0(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), app(ty_[], gh), df, fb) → new_lt1(vyw490, vyw500, gh)
new_compare20(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), False, app(app(app(ty_@3, de), app(app(ty_@2, ga), gb)), fb), bba) → new_lt3(vyw491, vyw501, ga, gb)
new_ltEs0(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), de, app(app(ty_Either, eh), fa), fb) → new_lt(vyw491, vyw501, eh, fa)
new_compare24(vyw118, vyw119, vyw120, vyw121, False, ccd, app(app(ty_Either, cce), ccf)) → new_ltEs(vyw119, vyw121, cce, ccf)
new_ltEs0(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), de, df, app(app(app(ty_@3, ea), eb), ec)) → new_ltEs0(vyw492, vyw502, ea, eb, ec)
new_ltEs3(@2(vyw490, vyw491), @2(vyw500, vyw501), bcc, app(app(ty_Either, bcd), bce)) → new_ltEs(vyw491, vyw501, bcd, bce)
new_ltEs0(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), de, df, app(ty_[], ed)) → new_ltEs1(vyw492, vyw502, ed)
new_ltEs3(@2(vyw490, vyw491), @2(vyw500, vyw501), app(app(ty_@2, bee), bef), bdg) → new_lt3(vyw490, vyw500, bee, bef)
new_ltEs2(Just(vyw490), Just(vyw500), app(app(ty_@2, bca), bcb)) → new_ltEs3(vyw490, vyw500, bca, bcb)
new_compare21(vyw56, vyw57, False, ceh, app(app(ty_Either, cfa), cfb)) → new_ltEs(vyw56, vyw57, cfa, cfb)
new_lt3(@2(vyw50, vyw51), @2(vyw300, vyw301), ccb, ccc) → new_compare24(vyw50, vyw51, vyw300, vyw301, new_asAs(new_esEs11(vyw50, vyw300, ccb), new_esEs10(vyw51, vyw301, ccc)), ccb, ccc)
new_lt0(@3(vyw50, vyw51, vyw52), @3(vyw300, vyw301, vyw302), beg, beh, bfa) → new_compare22(vyw50, vyw51, vyw52, vyw300, vyw301, vyw302, new_asAs(new_esEs8(vyw50, vyw300, beg), new_asAs(new_esEs7(vyw51, vyw301, beh), new_esEs6(vyw52, vyw302, bfa))), beg, beh, bfa)
new_compare22(vyw105, vyw106, vyw107, vyw108, vyw109, vyw110, False, bge, bfd, app(ty_[], bhc)) → new_ltEs1(vyw107, vyw110, bhc)
new_compare22(vyw105, vyw106, vyw107, vyw108, vyw109, vyw110, False, bge, app(app(ty_Either, bhg), bhh), bfe) → new_lt(vyw106, vyw109, bhg, bhh)
new_compare20(@2(vyw490, vyw491), @2(vyw500, vyw501), False, app(app(ty_@2, bcc), app(app(ty_Either, bcd), bce)), bba) → new_ltEs(vyw491, vyw501, bcd, bce)
new_compare23(vyw83, vyw84, False, app(app(ty_@2, cbh), cca)) → new_ltEs3(vyw83, vyw84, cbh, cca)
new_compare21(vyw56, vyw57, False, ceh, app(ty_[], cff)) → new_ltEs1(vyw56, vyw57, cff)
new_ltEs3(@2(vyw490, vyw491), @2(vyw500, vyw501), app(ty_Maybe, bed), bdg) → new_lt2(vyw490, vyw500, bed)
new_compare20(Right(vyw490), Right(vyw500), False, app(app(ty_Either, cb), app(app(app(ty_@3, ce), cf), cg)), bba) → new_ltEs0(vyw490, vyw500, ce, cf, cg)
new_ltEs0(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), app(app(ty_@2, hb), hc), df, fb) → new_lt3(vyw490, vyw500, hb, hc)
new_compare20(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), False, app(app(app(ty_@3, de), df), app(app(ty_@2, ef), eg)), bba) → new_ltEs3(vyw492, vyw502, ef, eg)
new_compare22(vyw105, vyw106, vyw107, vyw108, vyw109, vyw110, False, bge, bfd, app(app(app(ty_@3, bgh), bha), bhb)) → new_ltEs0(vyw107, vyw110, bgh, bha, bhb)
new_ltEs(Left(vyw490), Left(vyw500), app(ty_[], bf), bb) → new_ltEs1(vyw490, vyw500, bf)
new_ltEs3(@2(vyw490, vyw491), @2(vyw500, vyw501), app(app(ty_Either, bde), bdf), bdg) → new_lt(vyw490, vyw500, bde, bdf)
new_compare20(@2(vyw490, vyw491), @2(vyw500, vyw501), False, app(app(ty_@2, bcc), app(app(app(ty_@3, bcf), bcg), bch)), bba) → new_ltEs0(vyw491, vyw501, bcf, bcg, bch)
new_compare20(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), False, app(app(app(ty_@3, de), app(app(app(ty_@3, fc), fd), ff)), fb), bba) → new_lt0(vyw491, vyw501, fc, fd, ff)
new_compare20(Left(vyw490), Left(vyw500), False, app(app(ty_Either, app(ty_[], bf)), bb), bba) → new_ltEs1(vyw490, vyw500, bf)
new_ltEs(Left(vyw490), Left(vyw500), app(app(app(ty_@3, bc), bd), be), bb) → new_ltEs0(vyw490, vyw500, bc, bd, be)
new_ltEs0(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), de, app(ty_Maybe, fh), fb) → new_lt2(vyw491, vyw501, fh)
new_compare20(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), False, app(app(app(ty_@3, de), df), app(app(ty_Either, dg), dh)), bba) → new_ltEs(vyw492, vyw502, dg, dh)
new_compare20(Left(vyw490), Left(vyw500), False, app(app(ty_Either, app(app(app(ty_@3, bc), bd), be)), bb), bba) → new_ltEs0(vyw490, vyw500, bc, bd, be)
new_compare24(vyw118, vyw119, vyw120, vyw121, False, ccd, app(ty_Maybe, cdc)) → new_ltEs2(vyw119, vyw121, cdc)
new_ltEs0(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), de, app(ty_[], fg), fb) → new_lt1(vyw491, vyw501, fg)
new_compare20(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), False, app(app(app(ty_@3, app(ty_Maybe, ha)), df), fb), bba) → new_lt2(vyw490, vyw500, ha)
new_compare21(vyw56, vyw57, False, ceh, app(app(app(ty_@3, cfc), cfd), cfe)) → new_ltEs0(vyw56, vyw57, cfc, cfd, cfe)
new_compare23(vyw83, vyw84, False, app(ty_[], cbf)) → new_ltEs1(vyw83, vyw84, cbf)
new_ltEs3(@2(vyw490, vyw491), @2(vyw500, vyw501), app(ty_[], bec), bdg) → new_lt1(vyw490, vyw500, bec)
new_compare20(vyw49, vyw50, False, app(ty_[], hd), bba) → new_compare(vyw49, vyw50, hd)
new_ltEs(Left(vyw490), Left(vyw500), app(ty_Maybe, bg), bb) → new_ltEs2(vyw490, vyw500, bg)
new_ltEs3(@2(vyw490, vyw491), @2(vyw500, vyw501), bcc, app(ty_[], bda)) → new_ltEs1(vyw491, vyw501, bda)
new_compare22(vyw105, vyw106, vyw107, vyw108, vyw109, vyw110, False, bge, bfd, app(ty_Maybe, bhd)) → new_ltEs2(vyw107, vyw110, bhd)
new_compare22(vyw105, vyw106, vyw107, vyw108, vyw109, vyw110, False, bge, bfd, app(app(ty_Either, bgf), bgg)) → new_ltEs(vyw107, vyw110, bgf, bgg)
new_compare20(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), False, app(app(app(ty_@3, app(app(ty_@2, hb), hc)), df), fb), bba) → new_lt3(vyw490, vyw500, hb, hc)
new_compare23(vyw83, vyw84, False, app(app(app(ty_@3, cbc), cbd), cbe)) → new_ltEs0(vyw83, vyw84, cbc, cbd, cbe)
new_ltEs(Left(vyw490), Left(vyw500), app(app(ty_Either, h), ba), bb) → new_ltEs(vyw490, vyw500, h, ba)
new_ltEs1(vyw49, vyw50, hd) → new_compare(vyw49, vyw50, hd)
new_ltEs0(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), app(app(app(ty_@3, ge), gf), gg), df, fb) → new_lt0(vyw490, vyw500, ge, gf, gg)
new_compare4(@2(vyw50, vyw51), @2(vyw300, vyw301), ccb, ccc) → new_compare24(vyw50, vyw51, vyw300, vyw301, new_asAs(new_esEs11(vyw50, vyw300, ccb), new_esEs10(vyw51, vyw301, ccc)), ccb, ccc)
new_compare20(Right(vyw490), Right(vyw500), False, app(app(ty_Either, cb), app(ty_Maybe, db)), bba) → new_ltEs2(vyw490, vyw500, db)
new_compare20(Left(vyw490), Left(vyw500), False, app(app(ty_Either, app(app(ty_@2, bh), ca)), bb), bba) → new_ltEs3(vyw490, vyw500, bh, ca)
new_ltEs0(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), de, app(app(ty_@2, ga), gb), fb) → new_lt3(vyw491, vyw501, ga, gb)
new_compare20(Just(vyw490), Just(vyw500), False, app(ty_Maybe, app(ty_Maybe, bbh)), bba) → new_ltEs2(vyw490, vyw500, bbh)
new_compare20(@2(vyw490, vyw491), @2(vyw500, vyw501), False, app(app(ty_@2, app(ty_Maybe, bed)), bdg), bba) → new_lt2(vyw490, vyw500, bed)
new_compare24(vyw118, vyw119, vyw120, vyw121, False, app(ty_[], ced), cdh) → new_lt1(vyw118, vyw120, ced)
new_compare20(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), False, app(app(app(ty_@3, app(app(app(ty_@3, ge), gf), gg)), df), fb), bba) → new_lt0(vyw490, vyw500, ge, gf, gg)
new_compare22(vyw105, vyw106, vyw107, vyw108, vyw109, vyw110, False, bge, app(ty_[], cad), bfe) → new_lt1(vyw106, vyw109, cad)
new_compare20(Left(vyw490), Left(vyw500), False, app(app(ty_Either, app(ty_Maybe, bg)), bb), bba) → new_ltEs2(vyw490, vyw500, bg)
new_compare20(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), False, app(app(app(ty_@3, de), df), app(ty_Maybe, ee)), bba) → new_ltEs2(vyw492, vyw502, ee)
new_ltEs2(Just(vyw490), Just(vyw500), app(app(ty_Either, bbb), bbc)) → new_ltEs(vyw490, vyw500, bbb, bbc)
new_compare21(vyw56, vyw57, False, ceh, app(app(ty_@2, cfh), cga)) → new_ltEs3(vyw56, vyw57, cfh, cga)
new_compare22(vyw105, vyw106, vyw107, vyw108, vyw109, vyw110, False, app(app(ty_@2, bgc), bgd), bfd, bfe) → new_lt3(vyw105, vyw108, bgc, bgd)
new_compare23(vyw83, vyw84, False, app(app(ty_Either, cba), cbb)) → new_ltEs(vyw83, vyw84, cba, cbb)
new_compare24(vyw118, vyw119, vyw120, vyw121, False, app(ty_Maybe, cee), cdh) → new_lt2(vyw118, vyw120, cee)
new_ltEs0(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), de, app(app(app(ty_@3, fc), fd), ff), fb) → new_lt0(vyw491, vyw501, fc, fd, ff)
new_compare24(vyw118, vyw119, vyw120, vyw121, False, app(app(ty_Either, cdf), cdg), cdh) → new_lt(vyw118, vyw120, cdf, cdg)
new_compare20(@2(vyw490, vyw491), @2(vyw500, vyw501), False, app(app(ty_@2, app(ty_[], bec)), bdg), bba) → new_lt1(vyw490, vyw500, bec)
new_primCompAux(vyw50, vyw300, vyw44, app(app(ty_Either, hf), hg)) → new_compare1(vyw50, vyw300, hf, hg)
new_compare20(Just(vyw490), Just(vyw500), False, app(ty_Maybe, app(app(app(ty_@3, bbd), bbe), bbf)), bba) → new_ltEs0(vyw490, vyw500, bbd, bbe, bbf)
new_compare24(vyw118, vyw119, vyw120, vyw121, False, ccd, app(app(ty_@2, cdd), cde)) → new_ltEs3(vyw119, vyw121, cdd, cde)
new_compare24(vyw118, vyw119, vyw120, vyw121, False, app(app(ty_@2, cef), ceg), cdh) → new_lt3(vyw118, vyw120, cef, ceg)
new_compare20(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), False, app(app(app(ty_@3, de), app(app(ty_Either, eh), fa)), fb), bba) → new_lt(vyw491, vyw501, eh, fa)
new_compare20(Left(vyw490), Left(vyw500), False, app(app(ty_Either, app(app(ty_Either, h), ba)), bb), bba) → new_ltEs(vyw490, vyw500, h, ba)
new_compare20(Just(vyw490), Just(vyw500), False, app(ty_Maybe, app(ty_[], bbg)), bba) → new_ltEs1(vyw490, vyw500, bbg)
new_compare24(vyw118, vyw119, vyw120, vyw121, False, ccd, app(ty_[], cdb)) → new_ltEs1(vyw119, vyw121, cdb)
new_compare22(vyw105, vyw106, vyw107, vyw108, vyw109, vyw110, False, app(app(ty_Either, bfb), bfc), bfd, bfe) → new_lt(vyw105, vyw108, bfb, bfc)
new_ltEs0(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), de, df, app(ty_Maybe, ee)) → new_ltEs2(vyw492, vyw502, ee)
new_ltEs2(Just(vyw490), Just(vyw500), app(ty_Maybe, bbh)) → new_ltEs2(vyw490, vyw500, bbh)
new_compare20(Just(vyw490), Just(vyw500), False, app(ty_Maybe, app(app(ty_@2, bca), bcb)), bba) → new_ltEs3(vyw490, vyw500, bca, bcb)
new_compare(:(vyw50, vyw51), :(vyw300, vyw301), he) → new_compare(vyw51, vyw301, he)
new_compare24(vyw118, vyw119, vyw120, vyw121, False, ccd, app(app(app(ty_@3, ccg), cch), cda)) → new_ltEs0(vyw119, vyw121, ccg, cch, cda)
new_compare20(@2(vyw490, vyw491), @2(vyw500, vyw501), False, app(app(ty_@2, app(app(app(ty_@3, bdh), bea), beb)), bdg), bba) → new_lt0(vyw490, vyw500, bdh, bea, beb)
new_compare(:(vyw50, vyw51), :(vyw300, vyw301), he) → new_primCompAux(vyw50, vyw300, new_compare0(vyw51, vyw301, he), he)
new_ltEs0(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), de, df, app(app(ty_Either, dg), dh)) → new_ltEs(vyw492, vyw502, dg, dh)
new_primCompAux(vyw50, vyw300, vyw44, app(app(ty_@2, bae), baf)) → new_compare4(vyw50, vyw300, bae, baf)
new_compare22(vyw105, vyw106, vyw107, vyw108, vyw109, vyw110, False, bge, app(app(app(ty_@3, caa), cab), cac), bfe) → new_lt0(vyw106, vyw109, caa, cab, cac)
new_primCompAux(vyw50, vyw300, vyw44, app(app(app(ty_@3, hh), baa), bab)) → new_compare2(vyw50, vyw300, hh, baa, bab)
new_compare22(vyw105, vyw106, vyw107, vyw108, vyw109, vyw110, False, bge, bfd, app(app(ty_@2, bhe), bhf)) → new_ltEs3(vyw107, vyw110, bhe, bhf)
new_compare20(Just(vyw490), Just(vyw500), False, app(ty_Maybe, app(app(ty_Either, bbb), bbc)), bba) → new_ltEs(vyw490, vyw500, bbb, bbc)
new_compare3(Just(vyw50), Just(vyw300), cah) → new_compare23(vyw50, vyw300, new_esEs9(vyw50, vyw300, cah), cah)
new_compare20(@2(vyw490, vyw491), @2(vyw500, vyw501), False, app(app(ty_@2, app(app(ty_@2, bee), bef)), bdg), bba) → new_lt3(vyw490, vyw500, bee, bef)
new_lt(Left(vyw50), Left(vyw300), bag, bah) → new_compare20(vyw50, vyw300, new_esEs4(vyw50, vyw300, bag), bag, bah)
new_compare20(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), False, app(app(app(ty_@3, app(app(ty_Either, gc), gd)), df), fb), bba) → new_lt(vyw490, vyw500, gc, gd)
new_compare20(@2(vyw490, vyw491), @2(vyw500, vyw501), False, app(app(ty_@2, app(app(ty_Either, bde), bdf)), bdg), bba) → new_lt(vyw490, vyw500, bde, bdf)
new_compare20(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), False, app(app(app(ty_@3, app(ty_[], gh)), df), fb), bba) → new_lt1(vyw490, vyw500, gh)
new_ltEs(Right(vyw490), Right(vyw500), cb, app(app(app(ty_@3, ce), cf), cg)) → new_ltEs0(vyw490, vyw500, ce, cf, cg)
new_ltEs3(@2(vyw490, vyw491), @2(vyw500, vyw501), app(app(app(ty_@3, bdh), bea), beb), bdg) → new_lt0(vyw490, vyw500, bdh, bea, beb)
new_ltEs3(@2(vyw490, vyw491), @2(vyw500, vyw501), bcc, app(ty_Maybe, bdb)) → new_ltEs2(vyw491, vyw501, bdb)
new_ltEs0(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), app(app(ty_Either, gc), gd), df, fb) → new_lt(vyw490, vyw500, gc, gd)
new_primCompAux(vyw50, vyw300, vyw44, app(ty_Maybe, bad)) → new_compare3(vyw50, vyw300, bad)
new_compare20(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), False, app(app(app(ty_@3, de), df), app(app(app(ty_@3, ea), eb), ec)), bba) → new_ltEs0(vyw492, vyw502, ea, eb, ec)
new_compare20(@2(vyw490, vyw491), @2(vyw500, vyw501), False, app(app(ty_@2, bcc), app(app(ty_@2, bdc), bdd)), bba) → new_ltEs3(vyw491, vyw501, bdc, bdd)

The TRS R consists of the following rules:

new_esEs22(Right(vyw500), Right(vyw3000), eaf, ty_Char) → new_esEs19(vyw500, vyw3000)
new_esEs6(vyw52, vyw302, ty_Float) → new_esEs13(vyw52, vyw302)
new_lt5(vyw491, vyw501, app(ty_Maybe, fh)) → new_lt12(vyw491, vyw501, fh)
new_compare5(@0, @0) → EQ
new_lt23(vyw106, vyw109, app(ty_Maybe, cae)) → new_lt12(vyw106, vyw109, cae)
new_ltEs8(Right(vyw490), Right(vyw500), cb, ty_Int) → new_ltEs14(vyw490, vyw500)
new_esEs7(vyw51, vyw301, ty_Integer) → new_esEs21(vyw51, vyw301)
new_ltEs17(False, False) → True
new_esEs27(vyw491, vyw501, ty_Char) → new_esEs19(vyw491, vyw501)
new_esEs34(vyw490, vyw500, app(ty_[], bec)) → new_esEs20(vyw490, vyw500, bec)
new_esEs4(vyw50, vyw300, ty_@0) → new_esEs16(vyw50, vyw300)
new_esEs35(vyw501, vyw3001, ty_Integer) → new_esEs21(vyw501, vyw3001)
new_esEs9(vyw50, vyw300, app(app(ty_@2, ddc), ddd)) → new_esEs23(vyw50, vyw300, ddc, ddd)
new_esEs7(vyw51, vyw301, ty_Int) → new_esEs14(vyw51, vyw301)
new_ltEs8(Left(vyw490), Left(vyw500), ty_Bool, bb) → new_ltEs17(vyw490, vyw500)
new_esEs30(vyw502, vyw3002, ty_Ordering) → new_esEs26(vyw502, vyw3002)
new_ltEs21(vyw56, vyw57, app(ty_[], cff)) → new_ltEs9(vyw56, vyw57, cff)
new_ltEs19(vyw83, vyw84, app(ty_[], cbf)) → new_ltEs9(vyw83, vyw84, cbf)
new_ltEs14(vyw49, vyw50) → new_fsEs(new_compare15(vyw49, vyw50))
new_compare110(vyw141, vyw142, True, edf, edg) → LT
new_esEs24(Just(vyw500), Just(vyw3000), app(app(ty_@2, dfh), dga)) → new_esEs23(vyw500, vyw3000, dfh, dga)
new_esEs26(GT, GT) → True
new_esEs36(vyw500, vyw3000, ty_Bool) → new_esEs18(vyw500, vyw3000)
new_esEs8(vyw50, vyw300, app(app(app(ty_@3, ddg), ddh), dea)) → new_esEs15(vyw50, vyw300, ddg, ddh, dea)
new_esEs4(vyw50, vyw300, app(ty_Maybe, dfa)) → new_esEs24(vyw50, vyw300, dfa)
new_ltEs21(vyw56, vyw57, app(ty_Ratio, fch)) → new_ltEs18(vyw56, vyw57, fch)
new_esEs34(vyw490, vyw500, ty_Bool) → new_esEs18(vyw490, vyw500)
new_esEs38(vyw105, vyw108, ty_Char) → new_esEs19(vyw105, vyw108)
new_esEs29(vyw500, vyw3000, ty_Ordering) → new_esEs26(vyw500, vyw3000)
new_lt22(vyw105, vyw108, app(app(ty_@2, bgc), bgd)) → new_lt13(vyw105, vyw108, bgc, bgd)
new_lt21(vyw490, vyw500, ty_@0) → new_lt16(vyw490, vyw500)
new_ltEs15(vyw49, vyw50) → new_fsEs(new_compare5(vyw49, vyw50))
new_ltEs24(vyw107, vyw110, ty_Double) → new_ltEs12(vyw107, vyw110)
new_esEs28(vyw490, vyw500, ty_Int) → new_esEs14(vyw490, vyw500)
new_esEs31(vyw501, vyw3001, app(ty_Ratio, egf)) → new_esEs25(vyw501, vyw3001, egf)
new_esEs4(vyw50, vyw300, app(app(ty_@2, fde), fdf)) → new_esEs23(vyw50, vyw300, fde, fdf)
new_ltEs19(vyw83, vyw84, ty_Float) → new_ltEs4(vyw83, vyw84)
new_esEs6(vyw52, vyw302, ty_Bool) → new_esEs18(vyw52, vyw302)
new_esEs7(vyw51, vyw301, app(ty_Maybe, fcc)) → new_esEs24(vyw51, vyw301, fcc)
new_lt6(vyw490, vyw500, app(app(ty_Either, gc), gd)) → new_lt8(vyw490, vyw500, gc, gd)
new_ltEs8(Left(vyw490), Left(vyw500), ty_Float, bb) → new_ltEs4(vyw490, vyw500)
new_esEs8(vyw50, vyw300, ty_Ordering) → new_esEs26(vyw50, vyw300)
new_compare6(EQ, EQ) → EQ
new_ltEs8(Right(vyw490), Right(vyw500), cb, app(ty_[], da)) → new_ltEs9(vyw490, vyw500, da)
new_ltEs10(Just(vyw490), Just(vyw500), ty_Float) → new_ltEs4(vyw490, vyw500)
new_primMulNat0(Zero, Zero) → Zero
new_esEs24(Just(vyw500), Just(vyw3000), ty_Char) → new_esEs19(vyw500, vyw3000)
new_esEs5(vyw50, vyw300, ty_Float) → new_esEs13(vyw50, vyw300)
new_compare9(True, False) → GT
new_lt23(vyw106, vyw109, app(ty_Ratio, fhc)) → new_lt19(vyw106, vyw109, fhc)
new_ltEs20(vyw49, vyw50, ty_@0) → new_ltEs15(vyw49, vyw50)
new_esEs8(vyw50, vyw300, ty_Double) → new_esEs17(vyw50, vyw300)
new_esEs32(vyw500, vyw3000, app(app(ty_Either, ehc), ehd)) → new_esEs22(vyw500, vyw3000, ehc, ehd)
new_compare19(Left(vyw50), Right(vyw300), bag, bah) → LT
new_ltEs21(vyw56, vyw57, ty_Float) → new_ltEs4(vyw56, vyw57)
new_ltEs8(Right(vyw490), Right(vyw500), cb, ty_Ordering) → new_ltEs13(vyw490, vyw500)
new_ltEs6(vyw492, vyw502, app(app(app(ty_@3, ea), eb), ec)) → new_ltEs5(vyw492, vyw502, ea, eb, ec)
new_esEs8(vyw50, vyw300, ty_Int) → new_esEs14(vyw50, vyw300)
new_ltEs24(vyw107, vyw110, ty_Char) → new_ltEs16(vyw107, vyw110)
new_esEs30(vyw502, vyw3002, app(ty_Ratio, efd)) → new_esEs25(vyw502, vyw3002, efd)
new_esEs38(vyw105, vyw108, ty_Double) → new_esEs17(vyw105, vyw108)
new_esEs27(vyw491, vyw501, ty_Ordering) → new_esEs26(vyw491, vyw501)
new_ltEs19(vyw83, vyw84, app(app(ty_@2, cbh), cca)) → new_ltEs11(vyw83, vyw84, cbh, cca)
new_esEs32(vyw500, vyw3000, app(ty_Maybe, ehg)) → new_esEs24(vyw500, vyw3000, ehg)
new_compare30(vyw50, vyw300, app(app(ty_@2, bae), baf)) → new_compare7(vyw50, vyw300, bae, baf)
new_esEs27(vyw491, vyw501, app(ty_[], fg)) → new_esEs20(vyw491, vyw501, fg)
new_esEs38(vyw105, vyw108, ty_Integer) → new_esEs21(vyw105, vyw108)
new_esEs30(vyw502, vyw3002, ty_Double) → new_esEs17(vyw502, vyw3002)
new_esEs11(vyw50, vyw300, ty_Double) → new_esEs17(vyw50, vyw300)
new_esEs9(vyw50, vyw300, ty_Ordering) → new_esEs26(vyw50, vyw300)
new_esEs7(vyw51, vyw301, ty_Float) → new_esEs13(vyw51, vyw301)
new_lt5(vyw491, vyw501, app(app(app(ty_@3, fc), fd), ff)) → new_lt9(vyw491, vyw501, fc, fd, ff)
new_esEs9(vyw50, vyw300, app(ty_Maybe, dde)) → new_esEs24(vyw50, vyw300, dde)
new_esEs35(vyw501, vyw3001, app(ty_Ratio, feh)) → new_esEs25(vyw501, vyw3001, feh)
new_esEs11(vyw50, vyw300, ty_Integer) → new_esEs21(vyw50, vyw300)
new_ltEs10(Just(vyw490), Just(vyw500), ty_@0) → new_ltEs15(vyw490, vyw500)
new_ltEs8(Right(vyw490), Right(vyw500), cb, app(ty_Maybe, db)) → new_ltEs10(vyw490, vyw500, db)
new_esEs10(vyw51, vyw301, app(ty_Ratio, dae)) → new_esEs25(vyw51, vyw301, dae)
new_lt20(vyw118, vyw120, ty_Double) → new_lt14(vyw118, vyw120)
new_esEs37(vyw106, vyw109, app(app(ty_Either, bhg), bhh)) → new_esEs22(vyw106, vyw109, bhg, bhh)
new_esEs40(vyw500, vyw3000, ty_Int) → new_esEs14(vyw500, vyw3000)
new_esEs34(vyw490, vyw500, app(app(ty_@2, bee), bef)) → new_esEs23(vyw490, vyw500, bee, bef)
new_compare16(vyw185, vyw186, vyw187, vyw188, False, vyw190, dgf, dgg) → new_compare17(vyw185, vyw186, vyw187, vyw188, vyw190, dgf, dgg)
new_esEs36(vyw500, vyw3000, app(app(app(ty_@3, ffa), ffb), ffc)) → new_esEs15(vyw500, vyw3000, ffa, ffb, ffc)
new_esEs29(vyw500, vyw3000, app(app(ty_@2, eda), edb)) → new_esEs23(vyw500, vyw3000, eda, edb)
new_esEs5(vyw50, vyw300, app(app(ty_@2, cgh), cha)) → new_esEs23(vyw50, vyw300, cgh, cha)
new_esEs33(vyw118, vyw120, ty_@0) → new_esEs16(vyw118, vyw120)
new_esEs30(vyw502, vyw3002, app(app(ty_@2, efa), efb)) → new_esEs23(vyw502, vyw3002, efa, efb)
new_lt23(vyw106, vyw109, ty_Double) → new_lt14(vyw106, vyw109)
new_ltEs13(LT, EQ) → True
new_esEs8(vyw50, vyw300, app(ty_Ratio, deh)) → new_esEs25(vyw50, vyw300, deh)
new_ltEs20(vyw49, vyw50, app(ty_[], hd)) → new_ltEs9(vyw49, vyw50, hd)
new_esEs31(vyw501, vyw3001, app(app(ty_@2, egc), egd)) → new_esEs23(vyw501, vyw3001, egc, egd)
new_esEs37(vyw106, vyw109, app(app(ty_@2, caf), cag)) → new_esEs23(vyw106, vyw109, caf, cag)
new_compare0(:(vyw50, vyw51), :(vyw300, vyw301), he) → new_primCompAux0(vyw50, vyw300, new_compare0(vyw51, vyw301, he), he)
new_ltEs21(vyw56, vyw57, ty_Double) → new_ltEs12(vyw56, vyw57)
new_ltEs22(vyw119, vyw121, app(app(ty_Either, cce), ccf)) → new_ltEs8(vyw119, vyw121, cce, ccf)
new_ltEs22(vyw119, vyw121, app(app(app(ty_@3, ccg), cch), cda)) → new_ltEs5(vyw119, vyw121, ccg, cch, cda)
new_ltEs8(Left(vyw490), Left(vyw500), ty_Char, bb) → new_ltEs16(vyw490, vyw500)
new_esEs27(vyw491, vyw501, app(ty_Maybe, fh)) → new_esEs24(vyw491, vyw501, fh)
new_compare15(vyw5, vyw30) → new_primCmpInt(vyw5, vyw30)
new_esEs7(vyw51, vyw301, app(app(ty_@2, fca), fcb)) → new_esEs23(vyw51, vyw301, fca, fcb)
new_lt7(vyw5, vyw30) → new_esEs12(new_compare29(vyw5, vyw30))
new_esEs38(vyw105, vyw108, app(app(ty_@2, bgc), bgd)) → new_esEs23(vyw105, vyw108, bgc, bgd)
new_compare113(vyw170, vyw171, vyw172, vyw173, vyw174, vyw175, True, fgf, fgg, fgh) → LT
new_lt17(vyw5, vyw30) → new_esEs12(new_compare11(vyw5, vyw30))
new_esEs28(vyw490, vyw500, app(ty_Ratio, dcb)) → new_esEs25(vyw490, vyw500, dcb)
new_esEs10(vyw51, vyw301, ty_Integer) → new_esEs21(vyw51, vyw301)
new_compare30(vyw50, vyw300, app(app(ty_Either, hf), hg)) → new_compare19(vyw50, vyw300, hf, hg)
new_esEs11(vyw50, vyw300, ty_Bool) → new_esEs18(vyw50, vyw300)
new_ltEs5(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), de, df, fb) → new_pePe(new_lt6(vyw490, vyw500, de), new_asAs(new_esEs28(vyw490, vyw500, de), new_pePe(new_lt5(vyw491, vyw501, df), new_asAs(new_esEs27(vyw491, vyw501, df), new_ltEs6(vyw492, vyw502, fb)))))
new_esEs38(vyw105, vyw108, app(ty_[], bga)) → new_esEs20(vyw105, vyw108, bga)
new_esEs22(Right(vyw500), Right(vyw3000), eaf, ty_Int) → new_esEs14(vyw500, vyw3000)
new_lt5(vyw491, vyw501, ty_@0) → new_lt16(vyw491, vyw501)
new_esEs22(Left(vyw500), Left(vyw3000), app(app(ty_@2, eab), eac), dhc) → new_esEs23(vyw500, vyw3000, eab, eac)
new_compare30(vyw50, vyw300, app(ty_Maybe, bad)) → new_compare12(vyw50, vyw300, bad)
new_esEs27(vyw491, vyw501, app(app(ty_Either, eh), fa)) → new_esEs22(vyw491, vyw501, eh, fa)
new_lt4(vyw5, vyw30) → new_esEs12(new_compare6(vyw5, vyw30))
new_esEs33(vyw118, vyw120, ty_Double) → new_esEs17(vyw118, vyw120)
new_lt6(vyw490, vyw500, ty_Bool) → new_lt18(vyw490, vyw500)
new_pePe(False, vyw197) → vyw197
new_esEs32(vyw500, vyw3000, ty_Ordering) → new_esEs26(vyw500, vyw3000)
new_lt5(vyw491, vyw501, ty_Char) → new_lt17(vyw491, vyw501)
new_lt5(vyw491, vyw501, ty_Integer) → new_lt7(vyw491, vyw501)
new_ltEs8(Right(vyw490), Right(vyw500), cb, app(ty_Ratio, dcd)) → new_ltEs18(vyw490, vyw500, dcd)
new_esEs33(vyw118, vyw120, ty_Integer) → new_esEs21(vyw118, vyw120)
new_esEs7(vyw51, vyw301, ty_@0) → new_esEs16(vyw51, vyw301)
new_lt22(vyw105, vyw108, app(app(ty_Either, bfb), bfc)) → new_lt8(vyw105, vyw108, bfb, bfc)
new_esEs27(vyw491, vyw501, ty_@0) → new_esEs16(vyw491, vyw501)
new_ltEs8(Left(vyw490), Left(vyw500), app(ty_[], bf), bb) → new_ltEs9(vyw490, vyw500, bf)
new_esEs31(vyw501, vyw3001, app(app(app(ty_@3, efe), eff), efg)) → new_esEs15(vyw501, vyw3001, efe, eff, efg)
new_compare25(vyw118, vyw119, vyw120, vyw121, True, ccd, cdh) → EQ
new_esEs10(vyw51, vyw301, ty_Ordering) → new_esEs26(vyw51, vyw301)
new_ltEs23(vyw491, vyw501, app(ty_Maybe, bdb)) → new_ltEs10(vyw491, vyw501, bdb)
new_ltEs23(vyw491, vyw501, ty_Bool) → new_ltEs17(vyw491, vyw501)
new_esEs37(vyw106, vyw109, app(ty_Ratio, fhc)) → new_esEs25(vyw106, vyw109, fhc)
new_esEs36(vyw500, vyw3000, app(ty_Ratio, fgb)) → new_esEs25(vyw500, vyw3000, fgb)
new_compare12(Nothing, Nothing, cah) → EQ
new_esEs9(vyw50, vyw300, app(app(ty_Either, dda), ddb)) → new_esEs22(vyw50, vyw300, dda, ddb)
new_esEs35(vyw501, vyw3001, ty_Char) → new_esEs19(vyw501, vyw3001)
new_esEs24(Just(vyw500), Just(vyw3000), ty_Integer) → new_esEs21(vyw500, vyw3000)
new_esEs24(Just(vyw500), Just(vyw3000), ty_@0) → new_esEs16(vyw500, vyw3000)
new_lt5(vyw491, vyw501, app(app(ty_@2, ga), gb)) → new_lt13(vyw491, vyw501, ga, gb)
new_esEs9(vyw50, vyw300, ty_Bool) → new_esEs18(vyw50, vyw300)
new_esEs22(Left(vyw500), Left(vyw3000), app(ty_Ratio, eae), dhc) → new_esEs25(vyw500, vyw3000, eae)
new_compare27(vyw105, vyw106, vyw107, vyw108, vyw109, vyw110, False, bge, bfd, bfe) → new_compare112(vyw105, vyw106, vyw107, vyw108, vyw109, vyw110, new_lt22(vyw105, vyw108, bge), new_asAs(new_esEs38(vyw105, vyw108, bge), new_pePe(new_lt23(vyw106, vyw109, bfd), new_asAs(new_esEs37(vyw106, vyw109, bfd), new_ltEs24(vyw107, vyw110, bfe)))), bge, bfd, bfe)
new_compare7(@2(vyw50, vyw51), @2(vyw300, vyw301), ccb, ccc) → new_compare25(vyw50, vyw51, vyw300, vyw301, new_asAs(new_esEs11(vyw50, vyw300, ccb), new_esEs10(vyw51, vyw301, ccc)), ccb, ccc)
new_esEs31(vyw501, vyw3001, ty_Char) → new_esEs19(vyw501, vyw3001)
new_esEs31(vyw501, vyw3001, app(app(ty_Either, ega), egb)) → new_esEs22(vyw501, vyw3001, ega, egb)
new_ltEs23(vyw491, vyw501, ty_Double) → new_ltEs12(vyw491, vyw501)
new_esEs4(vyw50, vyw300, app(app(app(ty_@3, edh), eea), eeb)) → new_esEs15(vyw50, vyw300, edh, eea, eeb)
new_esEs27(vyw491, vyw501, ty_Integer) → new_esEs21(vyw491, vyw501)
new_lt23(vyw106, vyw109, app(ty_[], cad)) → new_lt10(vyw106, vyw109, cad)
new_ltEs13(EQ, GT) → True
new_compare6(LT, EQ) → LT
new_esEs35(vyw501, vyw3001, app(app(app(ty_@3, fdg), fdh), fea)) → new_esEs15(vyw501, vyw3001, fdg, fdh, fea)
new_esEs4(vyw50, vyw300, ty_Char) → new_esEs19(vyw50, vyw300)
new_esEs37(vyw106, vyw109, ty_@0) → new_esEs16(vyw106, vyw109)
new_esEs20([], [], ecb) → True
new_ltEs8(Right(vyw490), Right(vyw500), cb, ty_Char) → new_ltEs16(vyw490, vyw500)
new_esEs9(vyw50, vyw300, ty_Double) → new_esEs17(vyw50, vyw300)
new_esEs12(GT) → False
new_ltEs19(vyw83, vyw84, app(ty_Ratio, dge)) → new_ltEs18(vyw83, vyw84, dge)
new_lt5(vyw491, vyw501, ty_Int) → new_lt15(vyw491, vyw501)
new_esEs12(LT) → True
new_esEs34(vyw490, vyw500, ty_Float) → new_esEs13(vyw490, vyw500)
new_esEs35(vyw501, vyw3001, app(app(ty_Either, fec), fed)) → new_esEs22(vyw501, vyw3001, fec, fed)
new_esEs38(vyw105, vyw108, ty_Float) → new_esEs13(vyw105, vyw108)
new_compare17(vyw185, vyw186, vyw187, vyw188, True, dgf, dgg) → LT
new_esEs22(Right(vyw500), Right(vyw3000), eaf, ty_Double) → new_esEs17(vyw500, vyw3000)
new_esEs28(vyw490, vyw500, app(app(ty_Either, gc), gd)) → new_esEs22(vyw490, vyw500, gc, gd)
new_lt22(vyw105, vyw108, ty_Bool) → new_lt18(vyw105, vyw108)
new_esEs39(vyw501, vyw3001, ty_Int) → new_esEs14(vyw501, vyw3001)
new_esEs4(vyw50, vyw300, ty_Float) → new_esEs13(vyw50, vyw300)
new_primCmpNat0(Zero, Succ(vyw3000)) → LT
new_ltEs8(Right(vyw490), Right(vyw500), cb, app(app(ty_@2, dc), dd)) → new_ltEs11(vyw490, vyw500, dc, dd)
new_esEs38(vyw105, vyw108, app(app(app(ty_@3, bff), bfg), bfh)) → new_esEs15(vyw105, vyw108, bff, bfg, bfh)
new_ltEs4(vyw49, vyw50) → new_fsEs(new_compare8(vyw49, vyw50))
new_esEs9(vyw50, vyw300, ty_Float) → new_esEs13(vyw50, vyw300)
new_ltEs23(vyw491, vyw501, ty_Float) → new_ltEs4(vyw491, vyw501)
new_esEs9(vyw50, vyw300, app(ty_Ratio, ddf)) → new_esEs25(vyw50, vyw300, ddf)
new_compare30(vyw50, vyw300, ty_Char) → new_compare11(vyw50, vyw300)
new_esEs33(vyw118, vyw120, ty_Int) → new_esEs14(vyw118, vyw120)
new_lt5(vyw491, vyw501, ty_Ordering) → new_lt4(vyw491, vyw501)
new_esEs36(vyw500, vyw3000, ty_Double) → new_esEs17(vyw500, vyw3000)
new_esEs32(vyw500, vyw3000, app(ty_[], ehb)) → new_esEs20(vyw500, vyw3000, ehb)
new_ltEs22(vyw119, vyw121, ty_Integer) → new_ltEs7(vyw119, vyw121)
new_lt5(vyw491, vyw501, app(app(ty_Either, eh), fa)) → new_lt8(vyw491, vyw501, eh, fa)
new_ltEs22(vyw119, vyw121, ty_Bool) → new_ltEs17(vyw119, vyw121)
new_esEs37(vyw106, vyw109, app(ty_Maybe, cae)) → new_esEs24(vyw106, vyw109, cae)
new_esEs8(vyw50, vyw300, app(app(ty_Either, dec), ded)) → new_esEs22(vyw50, vyw300, dec, ded)
new_esEs22(Left(vyw500), Left(vyw3000), ty_Int, dhc) → new_esEs14(vyw500, vyw3000)
new_esEs22(Right(vyw500), Right(vyw3000), eaf, ty_Float) → new_esEs13(vyw500, vyw3000)
new_esEs37(vyw106, vyw109, ty_Int) → new_esEs14(vyw106, vyw109)
new_esEs24(Just(vyw500), Just(vyw3000), app(app(ty_Either, dff), dfg)) → new_esEs22(vyw500, vyw3000, dff, dfg)
new_esEs33(vyw118, vyw120, app(ty_Ratio, fdb)) → new_esEs25(vyw118, vyw120, fdb)
new_compare19(Right(vyw50), Left(vyw300), bag, bah) → GT
new_esEs26(LT, EQ) → False
new_esEs26(EQ, LT) → False
new_esEs34(vyw490, vyw500, ty_Integer) → new_esEs21(vyw490, vyw500)
new_esEs34(vyw490, vyw500, app(app(ty_Either, bde), bdf)) → new_esEs22(vyw490, vyw500, bde, bdf)
new_esEs24(Just(vyw500), Just(vyw3000), ty_Float) → new_esEs13(vyw500, vyw3000)
new_ltEs10(Just(vyw490), Just(vyw500), app(ty_Maybe, bbh)) → new_ltEs10(vyw490, vyw500, bbh)
new_esEs33(vyw118, vyw120, ty_Float) → new_esEs13(vyw118, vyw120)
new_ltEs24(vyw107, vyw110, app(ty_Maybe, bhd)) → new_ltEs10(vyw107, vyw110, bhd)
new_pePe(True, vyw197) → True
new_compare0([], [], he) → EQ
new_primEqNat0(Zero, Zero) → True
new_esEs39(vyw501, vyw3001, ty_Integer) → new_esEs21(vyw501, vyw3001)
new_esEs30(vyw502, vyw3002, ty_@0) → new_esEs16(vyw502, vyw3002)
new_ltEs20(vyw49, vyw50, app(ty_Ratio, dgh)) → new_ltEs18(vyw49, vyw50, dgh)
new_lt5(vyw491, vyw501, ty_Bool) → new_lt18(vyw491, vyw501)
new_lt20(vyw118, vyw120, ty_Int) → new_lt15(vyw118, vyw120)
new_esEs37(vyw106, vyw109, ty_Bool) → new_esEs18(vyw106, vyw109)
new_compare111(vyw134, vyw135, False, fgc, fgd) → GT
new_esEs29(vyw500, vyw3000, ty_Int) → new_esEs14(vyw500, vyw3000)
new_esEs28(vyw490, vyw500, ty_@0) → new_esEs16(vyw490, vyw500)
new_ltEs19(vyw83, vyw84, app(app(ty_Either, cba), cbb)) → new_ltEs8(vyw83, vyw84, cba, cbb)
new_esEs12(EQ) → False
new_esEs5(vyw50, vyw300, app(ty_Ratio, chc)) → new_esEs25(vyw50, vyw300, chc)
new_lt20(vyw118, vyw120, ty_Integer) → new_lt7(vyw118, vyw120)
new_ltEs21(vyw56, vyw57, app(app(ty_Either, cfa), cfb)) → new_ltEs8(vyw56, vyw57, cfa, cfb)
new_esEs5(vyw50, vyw300, app(app(app(ty_@3, cgb), cgc), cgd)) → new_esEs15(vyw50, vyw300, cgb, cgc, cgd)
new_compare6(EQ, LT) → GT
new_compare110(vyw141, vyw142, False, edf, edg) → GT
new_esEs38(vyw105, vyw108, ty_Bool) → new_esEs18(vyw105, vyw108)
new_lt23(vyw106, vyw109, ty_@0) → new_lt16(vyw106, vyw109)
new_ltEs23(vyw491, vyw501, ty_Ordering) → new_ltEs13(vyw491, vyw501)
new_esEs35(vyw501, vyw3001, ty_Float) → new_esEs13(vyw501, vyw3001)
new_esEs4(vyw50, vyw300, app(ty_Ratio, fge)) → new_esEs25(vyw50, vyw300, fge)
new_esEs29(vyw500, vyw3000, app(app(app(ty_@3, ecc), ecd), ece)) → new_esEs15(vyw500, vyw3000, ecc, ecd, ece)
new_compare18(:%(vyw50, vyw51), :%(vyw300, vyw301), ty_Int) → new_compare15(new_sr(vyw50, vyw301), new_sr(vyw300, vyw51))
new_esEs26(LT, LT) → True
new_sr(vyw51, vyw301) → new_primMulInt(vyw51, vyw301)
new_esEs34(vyw490, vyw500, ty_Double) → new_esEs17(vyw490, vyw500)
new_esEs30(vyw502, vyw3002, ty_Char) → new_esEs19(vyw502, vyw3002)
new_esEs24(Just(vyw500), Just(vyw3000), ty_Bool) → new_esEs18(vyw500, vyw3000)
new_esEs36(vyw500, vyw3000, ty_Char) → new_esEs19(vyw500, vyw3000)
new_esEs26(LT, GT) → False
new_esEs26(GT, LT) → False
new_esEs10(vyw51, vyw301, ty_Int) → new_esEs14(vyw51, vyw301)
new_ltEs21(vyw56, vyw57, app(app(ty_@2, cfh), cga)) → new_ltEs11(vyw56, vyw57, cfh, cga)
new_esEs35(vyw501, vyw3001, app(ty_Maybe, feg)) → new_esEs24(vyw501, vyw3001, feg)
new_esEs30(vyw502, vyw3002, app(ty_Maybe, efc)) → new_esEs24(vyw502, vyw3002, efc)
new_primPlusNat0(Succ(vyw1980), vyw30100) → Succ(Succ(new_primPlusNat1(vyw1980, vyw30100)))
new_compare12(Nothing, Just(vyw300), cah) → LT
new_lt6(vyw490, vyw500, app(app(app(ty_@3, ge), gf), gg)) → new_lt9(vyw490, vyw500, ge, gf, gg)
new_esEs36(vyw500, vyw3000, app(ty_Maybe, fga)) → new_esEs24(vyw500, vyw3000, fga)
new_ltEs10(Just(vyw490), Just(vyw500), ty_Bool) → new_ltEs17(vyw490, vyw500)
new_esEs10(vyw51, vyw301, ty_@0) → new_esEs16(vyw51, vyw301)
new_ltEs24(vyw107, vyw110, app(app(ty_@2, bhe), bhf)) → new_ltEs11(vyw107, vyw110, bhe, bhf)
new_esEs32(vyw500, vyw3000, ty_Double) → new_esEs17(vyw500, vyw3000)
new_lt20(vyw118, vyw120, ty_Char) → new_lt17(vyw118, vyw120)
new_lt21(vyw490, vyw500, app(app(ty_@2, bee), bef)) → new_lt13(vyw490, vyw500, bee, bef)
new_compare30(vyw50, vyw300, ty_Double) → new_compare14(vyw50, vyw300)
new_ltEs20(vyw49, vyw50, ty_Int) → new_ltEs14(vyw49, vyw50)
new_compare18(:%(vyw50, vyw51), :%(vyw300, vyw301), ty_Integer) → new_compare29(new_sr0(vyw50, vyw301), new_sr0(vyw300, vyw51))
new_esEs32(vyw500, vyw3000, ty_Int) → new_esEs14(vyw500, vyw3000)
new_ltEs20(vyw49, vyw50, app(app(app(ty_@3, de), df), fb)) → new_ltEs5(vyw49, vyw50, de, df, fb)
new_ltEs22(vyw119, vyw121, app(ty_Ratio, fda)) → new_ltEs18(vyw119, vyw121, fda)
new_primEqInt(Neg(Succ(vyw5000)), Neg(Succ(vyw30000))) → new_primEqNat0(vyw5000, vyw30000)
new_esEs28(vyw490, vyw500, app(ty_[], gh)) → new_esEs20(vyw490, vyw500, gh)
new_lt22(vyw105, vyw108, ty_Ordering) → new_lt4(vyw105, vyw108)
new_ltEs12(vyw49, vyw50) → new_fsEs(new_compare14(vyw49, vyw50))
new_ltEs8(Left(vyw490), Left(vyw500), app(app(app(ty_@3, bc), bd), be), bb) → new_ltEs5(vyw490, vyw500, bc, bd, be)
new_esEs29(vyw500, vyw3000, app(ty_Maybe, edc)) → new_esEs24(vyw500, vyw3000, edc)
new_primPlusNat1(Succ(vyw19800), Zero) → Succ(vyw19800)
new_primPlusNat1(Zero, Succ(vyw301000)) → Succ(vyw301000)
new_esEs7(vyw51, vyw301, ty_Char) → new_esEs19(vyw51, vyw301)
new_ltEs16(vyw49, vyw50) → new_fsEs(new_compare11(vyw49, vyw50))
new_esEs11(vyw50, vyw300, app(app(app(ty_@3, daf), dag), dah)) → new_esEs15(vyw50, vyw300, daf, dag, dah)
new_ltEs8(Left(vyw490), Left(vyw500), app(ty_Ratio, dcc), bb) → new_ltEs18(vyw490, vyw500, dcc)
new_ltEs18(vyw49, vyw50, dgh) → new_fsEs(new_compare18(vyw49, vyw50, dgh))
new_ltEs17(True, False) → False
new_ltEs13(LT, GT) → True
new_esEs24(Just(vyw500), Just(vyw3000), ty_Ordering) → new_esEs26(vyw500, vyw3000)
new_ltEs8(Left(vyw490), Left(vyw500), ty_Ordering, bb) → new_ltEs13(vyw490, vyw500)
new_lt23(vyw106, vyw109, ty_Char) → new_lt17(vyw106, vyw109)
new_esEs22(Right(vyw500), Right(vyw3000), eaf, app(app(ty_@2, ebe), ebf)) → new_esEs23(vyw500, vyw3000, ebe, ebf)
new_compare10(@3(vyw50, vyw51, vyw52), @3(vyw300, vyw301, vyw302), beg, beh, bfa) → new_compare27(vyw50, vyw51, vyw52, vyw300, vyw301, vyw302, new_asAs(new_esEs8(vyw50, vyw300, beg), new_asAs(new_esEs7(vyw51, vyw301, beh), new_esEs6(vyw52, vyw302, bfa))), beg, beh, bfa)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_lt22(vyw105, vyw108, app(ty_Maybe, bgb)) → new_lt12(vyw105, vyw108, bgb)
new_lt6(vyw490, vyw500, ty_Ordering) → new_lt4(vyw490, vyw500)
new_ltEs10(Just(vyw490), Just(vyw500), app(app(ty_@2, bca), bcb)) → new_ltEs11(vyw490, vyw500, bca, bcb)
new_esEs33(vyw118, vyw120, app(app(ty_@2, cef), ceg)) → new_esEs23(vyw118, vyw120, cef, ceg)
new_lt22(vyw105, vyw108, ty_Int) → new_lt15(vyw105, vyw108)
new_esEs23(@2(vyw500, vyw501), @2(vyw3000, vyw3001), fde, fdf) → new_asAs(new_esEs36(vyw500, vyw3000, fde), new_esEs35(vyw501, vyw3001, fdf))
new_esEs40(vyw500, vyw3000, ty_Integer) → new_esEs21(vyw500, vyw3000)
new_esEs31(vyw501, vyw3001, ty_@0) → new_esEs16(vyw501, vyw3001)
new_esEs20([], :(vyw3000, vyw3001), ecb) → False
new_esEs20(:(vyw500, vyw501), [], ecb) → False
new_esEs24(Nothing, Nothing, dfa) → True
new_ltEs8(Left(vyw490), Left(vyw500), app(ty_Maybe, bg), bb) → new_ltEs10(vyw490, vyw500, bg)
new_compare29(Integer(vyw50), Integer(vyw300)) → new_primCmpInt(vyw50, vyw300)
new_esEs34(vyw490, vyw500, ty_Ordering) → new_esEs26(vyw490, vyw500)
new_primEqInt(Neg(Zero), Neg(Succ(vyw30000))) → False
new_primEqInt(Neg(Succ(vyw5000)), Neg(Zero)) → False
new_esEs38(vyw105, vyw108, app(ty_Maybe, bgb)) → new_esEs24(vyw105, vyw108, bgb)
new_esEs24(Just(vyw500), Just(vyw3000), app(ty_Maybe, dgb)) → new_esEs24(vyw500, vyw3000, dgb)
new_esEs36(vyw500, vyw3000, ty_Ordering) → new_esEs26(vyw500, vyw3000)
new_esEs6(vyw52, vyw302, app(app(ty_@2, fag), fah)) → new_esEs23(vyw52, vyw302, fag, fah)
new_compare9(False, False) → EQ
new_lt22(vyw105, vyw108, app(app(app(ty_@3, bff), bfg), bfh)) → new_lt9(vyw105, vyw108, bff, bfg, bfh)
new_esEs37(vyw106, vyw109, ty_Double) → new_esEs17(vyw106, vyw109)
new_esEs34(vyw490, vyw500, ty_Int) → new_esEs14(vyw490, vyw500)
new_ltEs19(vyw83, vyw84, ty_Int) → new_ltEs14(vyw83, vyw84)
new_esEs22(Left(vyw500), Left(vyw3000), app(ty_[], dhg), dhc) → new_esEs20(vyw500, vyw3000, dhg)
new_esEs33(vyw118, vyw120, app(app(ty_Either, cdf), cdg)) → new_esEs22(vyw118, vyw120, cdf, cdg)
new_esEs11(vyw50, vyw300, ty_Int) → new_esEs14(vyw50, vyw300)
new_esEs35(vyw501, vyw3001, app(ty_[], feb)) → new_esEs20(vyw501, vyw3001, feb)
new_esEs10(vyw51, vyw301, app(app(app(ty_@3, chd), che), chf)) → new_esEs15(vyw51, vyw301, chd, che, chf)
new_ltEs21(vyw56, vyw57, ty_Int) → new_ltEs14(vyw56, vyw57)
new_esEs30(vyw502, vyw3002, ty_Float) → new_esEs13(vyw502, vyw3002)
new_compare6(GT, GT) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_esEs22(Right(vyw500), Right(vyw3000), eaf, ty_Bool) → new_esEs18(vyw500, vyw3000)
new_ltEs24(vyw107, vyw110, app(app(app(ty_@3, bgh), bha), bhb)) → new_ltEs5(vyw107, vyw110, bgh, bha, bhb)
new_esEs22(Left(vyw500), Left(vyw3000), ty_Double, dhc) → new_esEs17(vyw500, vyw3000)
new_esEs8(vyw50, vyw300, ty_Char) → new_esEs19(vyw50, vyw300)
new_esEs29(vyw500, vyw3000, ty_Float) → new_esEs13(vyw500, vyw3000)
new_primCmpNat0(Succ(vyw500), Succ(vyw3000)) → new_primCmpNat0(vyw500, vyw3000)
new_esEs6(vyw52, vyw302, ty_Double) → new_esEs17(vyw52, vyw302)
new_esEs31(vyw501, vyw3001, ty_Ordering) → new_esEs26(vyw501, vyw3001)
new_esEs35(vyw501, vyw3001, ty_Int) → new_esEs14(vyw501, vyw3001)
new_esEs29(vyw500, vyw3000, app(ty_[], ecf)) → new_esEs20(vyw500, vyw3000, ecf)
new_esEs4(vyw50, vyw300, ty_Ordering) → new_esEs26(vyw50, vyw300)
new_ltEs13(GT, LT) → False
new_esEs38(vyw105, vyw108, app(app(ty_Either, bfb), bfc)) → new_esEs22(vyw105, vyw108, bfb, bfc)
new_esEs25(:%(vyw500, vyw501), :%(vyw3000, vyw3001), fge) → new_asAs(new_esEs40(vyw500, vyw3000, fge), new_esEs39(vyw501, vyw3001, fge))
new_primEqInt(Pos(Succ(vyw5000)), Pos(Succ(vyw30000))) → new_primEqNat0(vyw5000, vyw30000)
new_esEs22(Left(vyw500), Left(vyw3000), ty_@0, dhc) → new_esEs16(vyw500, vyw3000)
new_compare210(vyw56, vyw57, False, ceh, fcg) → new_compare110(vyw56, vyw57, new_ltEs21(vyw56, vyw57, fcg), ceh, fcg)
new_esEs4(vyw50, vyw300, ty_Int) → new_esEs14(vyw50, vyw300)
new_ltEs13(EQ, EQ) → True
new_esEs24(Just(vyw500), Nothing, dfa) → False
new_esEs24(Nothing, Just(vyw3000), dfa) → False
new_esEs7(vyw51, vyw301, app(app(app(ty_@3, fbc), fbd), fbe)) → new_esEs15(vyw51, vyw301, fbc, fbd, fbe)
new_esEs6(vyw52, vyw302, ty_Ordering) → new_esEs26(vyw52, vyw302)
new_lt13(vyw5, vyw30, ccb, ccc) → new_esEs12(new_compare7(vyw5, vyw30, ccb, ccc))
new_esEs9(vyw50, vyw300, app(ty_[], dch)) → new_esEs20(vyw50, vyw300, dch)
new_primEqNat0(Succ(vyw5000), Succ(vyw30000)) → new_primEqNat0(vyw5000, vyw30000)
new_ltEs8(Right(vyw490), Right(vyw500), cb, ty_@0) → new_ltEs15(vyw490, vyw500)
new_lt10(vyw5, vyw30, he) → new_esEs12(new_compare0(vyw5, vyw30, he))
new_compare19(Right(vyw50), Right(vyw300), bag, bah) → new_compare210(vyw50, vyw300, new_esEs5(vyw50, vyw300, bah), bag, bah)
new_esEs20(:(vyw500, vyw501), :(vyw3000, vyw3001), ecb) → new_asAs(new_esEs29(vyw500, vyw3000, ecb), new_esEs20(vyw501, vyw3001, ecb))
new_esEs5(vyw50, vyw300, ty_Double) → new_esEs17(vyw50, vyw300)
new_esEs26(EQ, EQ) → True
new_esEs28(vyw490, vyw500, ty_Integer) → new_esEs21(vyw490, vyw500)
new_esEs6(vyw52, vyw302, app(ty_[], fad)) → new_esEs20(vyw52, vyw302, fad)
new_lt21(vyw490, vyw500, ty_Int) → new_lt15(vyw490, vyw500)
new_esEs24(Just(vyw500), Just(vyw3000), app(ty_Ratio, dgc)) → new_esEs25(vyw500, vyw3000, dgc)
new_lt21(vyw490, vyw500, app(ty_Maybe, bed)) → new_lt12(vyw490, vyw500, bed)
new_lt5(vyw491, vyw501, ty_Float) → new_lt11(vyw491, vyw501)
new_esEs8(vyw50, vyw300, ty_Bool) → new_esEs18(vyw50, vyw300)
new_ltEs20(vyw49, vyw50, ty_Char) → new_ltEs16(vyw49, vyw50)
new_esEs30(vyw502, vyw3002, ty_Int) → new_esEs14(vyw502, vyw3002)
new_primCompAux00(vyw77, LT) → LT
new_primCmpInt(Neg(Succ(vyw500)), Neg(vyw300)) → new_primCmpNat0(vyw300, Succ(vyw500))
new_esEs35(vyw501, vyw3001, ty_Bool) → new_esEs18(vyw501, vyw3001)
new_compare6(LT, LT) → EQ
new_esEs36(vyw500, vyw3000, app(app(ty_Either, ffe), fff)) → new_esEs22(vyw500, vyw3000, ffe, fff)
new_ltEs8(Left(vyw490), Left(vyw500), app(app(ty_@2, bh), ca), bb) → new_ltEs11(vyw490, vyw500, bh, ca)
new_esEs31(vyw501, vyw3001, ty_Bool) → new_esEs18(vyw501, vyw3001)
new_ltEs6(vyw492, vyw502, ty_Bool) → new_ltEs17(vyw492, vyw502)
new_primEqInt(Pos(Zero), Pos(Succ(vyw30000))) → False
new_primEqInt(Pos(Succ(vyw5000)), Pos(Zero)) → False
new_compare13(vyw155, vyw156, True, eca) → LT
new_lt8(vyw5, vyw30, bag, bah) → new_esEs12(new_compare19(vyw5, vyw30, bag, bah))
new_ltEs24(vyw107, vyw110, ty_@0) → new_ltEs15(vyw107, vyw110)
new_primCmpNat0(Zero, Zero) → EQ
new_esEs11(vyw50, vyw300, ty_@0) → new_esEs16(vyw50, vyw300)
new_ltEs8(Right(vyw490), Right(vyw500), cb, ty_Integer) → new_ltEs7(vyw490, vyw500)
new_compare27(vyw105, vyw106, vyw107, vyw108, vyw109, vyw110, True, bge, bfd, bfe) → EQ
new_esEs29(vyw500, vyw3000, app(ty_Ratio, edd)) → new_esEs25(vyw500, vyw3000, edd)
new_primCmpNat0(Succ(vyw500), Zero) → GT
new_esEs24(Just(vyw500), Just(vyw3000), ty_Int) → new_esEs14(vyw500, vyw3000)
new_esEs11(vyw50, vyw300, app(ty_[], dba)) → new_esEs20(vyw50, vyw300, dba)
new_ltEs6(vyw492, vyw502, ty_Ordering) → new_ltEs13(vyw492, vyw502)
new_lt21(vyw490, vyw500, app(ty_[], bec)) → new_lt10(vyw490, vyw500, bec)
new_esEs15(@3(vyw500, vyw501, vyw502), @3(vyw3000, vyw3001, vyw3002), edh, eea, eeb) → new_asAs(new_esEs32(vyw500, vyw3000, edh), new_asAs(new_esEs31(vyw501, vyw3001, eea), new_esEs30(vyw502, vyw3002, eeb)))
new_ltEs21(vyw56, vyw57, app(ty_Maybe, cfg)) → new_ltEs10(vyw56, vyw57, cfg)
new_compare8(Float(vyw50, vyw51), Float(vyw300, vyw301)) → new_compare15(new_sr(vyw50, vyw300), new_sr(vyw51, vyw301))
new_primCmpInt(Neg(Zero), Pos(Succ(vyw3000))) → LT
new_esEs34(vyw490, vyw500, ty_@0) → new_esEs16(vyw490, vyw500)
new_esEs32(vyw500, vyw3000, app(app(ty_@2, ehe), ehf)) → new_esEs23(vyw500, vyw3000, ehe, ehf)
new_esEs30(vyw502, vyw3002, ty_Bool) → new_esEs18(vyw502, vyw3002)
new_esEs31(vyw501, vyw3001, ty_Int) → new_esEs14(vyw501, vyw3001)
new_sr0(Integer(vyw3000), Integer(vyw510)) → Integer(new_primMulInt(vyw3000, vyw510))
new_esEs33(vyw118, vyw120, ty_Ordering) → new_esEs26(vyw118, vyw120)
new_primPlusNat1(Succ(vyw19800), Succ(vyw301000)) → Succ(Succ(new_primPlusNat1(vyw19800, vyw301000)))
new_esEs28(vyw490, vyw500, ty_Ordering) → new_esEs26(vyw490, vyw500)
new_compare28(vyw49, vyw50, True, fce, bba) → EQ
new_primEqInt(Neg(Succ(vyw5000)), Pos(vyw3000)) → False
new_primEqInt(Pos(Succ(vyw5000)), Neg(vyw3000)) → False
new_esEs5(vyw50, vyw300, ty_Int) → new_esEs14(vyw50, vyw300)
new_esEs22(Right(vyw500), Right(vyw3000), eaf, app(ty_Ratio, ebh)) → new_esEs25(vyw500, vyw3000, ebh)
new_esEs7(vyw51, vyw301, app(app(ty_Either, fbg), fbh)) → new_esEs22(vyw51, vyw301, fbg, fbh)
new_esEs13(Float(vyw500, vyw501), Float(vyw3000, vyw3001)) → new_esEs14(new_sr(vyw500, vyw3000), new_sr(vyw501, vyw3001))
new_esEs29(vyw500, vyw3000, ty_Char) → new_esEs19(vyw500, vyw3000)
new_esEs32(vyw500, vyw3000, ty_@0) → new_esEs16(vyw500, vyw3000)
new_compare30(vyw50, vyw300, app(app(app(ty_@3, hh), baa), bab)) → new_compare10(vyw50, vyw300, hh, baa, bab)
new_esEs33(vyw118, vyw120, ty_Bool) → new_esEs18(vyw118, vyw120)
new_ltEs19(vyw83, vyw84, ty_@0) → new_ltEs15(vyw83, vyw84)
new_compare113(vyw170, vyw171, vyw172, vyw173, vyw174, vyw175, False, fgf, fgg, fgh) → GT
new_ltEs23(vyw491, vyw501, app(app(ty_@2, bdc), bdd)) → new_ltEs11(vyw491, vyw501, bdc, bdd)
new_compare14(Double(vyw50, vyw51), Double(vyw300, vyw301)) → new_compare15(new_sr(vyw50, vyw300), new_sr(vyw51, vyw301))
new_lt23(vyw106, vyw109, ty_Bool) → new_lt18(vyw106, vyw109)
new_esEs32(vyw500, vyw3000, app(ty_Ratio, ehh)) → new_esEs25(vyw500, vyw3000, ehh)
new_esEs38(vyw105, vyw108, ty_Ordering) → new_esEs26(vyw105, vyw108)
new_lt20(vyw118, vyw120, app(app(ty_@2, cef), ceg)) → new_lt13(vyw118, vyw120, cef, ceg)
new_primEqInt(Neg(Zero), Pos(Succ(vyw30000))) → False
new_primEqInt(Pos(Zero), Neg(Succ(vyw30000))) → False
new_ltEs23(vyw491, vyw501, ty_Int) → new_ltEs14(vyw491, vyw501)
new_fsEs(vyw192) → new_not(new_esEs26(vyw192, GT))
new_esEs6(vyw52, vyw302, app(ty_Maybe, fba)) → new_esEs24(vyw52, vyw302, fba)
new_ltEs20(vyw49, vyw50, app(app(ty_@2, bcc), bdg)) → new_ltEs11(vyw49, vyw50, bcc, bdg)
new_primCmpInt(Pos(Zero), Pos(Succ(vyw3000))) → new_primCmpNat0(Zero, Succ(vyw3000))
new_primCompAux00(vyw77, EQ) → vyw77
new_esEs30(vyw502, vyw3002, ty_Integer) → new_esEs21(vyw502, vyw3002)
new_lt21(vyw490, vyw500, ty_Char) → new_lt17(vyw490, vyw500)
new_lt20(vyw118, vyw120, ty_Ordering) → new_lt4(vyw118, vyw120)
new_esEs34(vyw490, vyw500, app(ty_Maybe, bed)) → new_esEs24(vyw490, vyw500, bed)
new_esEs10(vyw51, vyw301, ty_Char) → new_esEs19(vyw51, vyw301)
new_esEs28(vyw490, vyw500, app(app(app(ty_@3, ge), gf), gg)) → new_esEs15(vyw490, vyw500, ge, gf, gg)
new_lt20(vyw118, vyw120, app(app(app(ty_@3, cea), ceb), cec)) → new_lt9(vyw118, vyw120, cea, ceb, cec)
new_esEs37(vyw106, vyw109, app(app(app(ty_@3, caa), cab), cac)) → new_esEs15(vyw106, vyw109, caa, cab, cac)
new_ltEs13(GT, EQ) → False
new_esEs22(Right(vyw500), Right(vyw3000), eaf, app(ty_[], ebb)) → new_esEs20(vyw500, vyw3000, ebb)
new_esEs5(vyw50, vyw300, app(ty_Maybe, chb)) → new_esEs24(vyw50, vyw300, chb)
new_lt23(vyw106, vyw109, app(app(app(ty_@3, caa), cab), cac)) → new_lt9(vyw106, vyw109, caa, cab, cac)
new_ltEs13(EQ, LT) → False
new_ltEs8(Right(vyw490), Right(vyw500), cb, ty_Float) → new_ltEs4(vyw490, vyw500)
new_esEs6(vyw52, vyw302, ty_Int) → new_esEs14(vyw52, vyw302)
new_ltEs10(Just(vyw490), Just(vyw500), app(app(ty_Either, bbb), bbc)) → new_ltEs8(vyw490, vyw500, bbb, bbc)
new_compare19(Left(vyw50), Left(vyw300), bag, bah) → new_compare28(vyw50, vyw300, new_esEs4(vyw50, vyw300, bag), bag, bah)
new_ltEs24(vyw107, vyw110, ty_Integer) → new_ltEs7(vyw107, vyw110)
new_esEs32(vyw500, vyw3000, app(app(app(ty_@3, egg), egh), eha)) → new_esEs15(vyw500, vyw3000, egg, egh, eha)
new_ltEs23(vyw491, vyw501, app(ty_Ratio, fdc)) → new_ltEs18(vyw491, vyw501, fdc)
new_esEs34(vyw490, vyw500, app(app(app(ty_@3, bdh), bea), beb)) → new_esEs15(vyw490, vyw500, bdh, bea, beb)
new_ltEs6(vyw492, vyw502, app(ty_Ratio, dbh)) → new_ltEs18(vyw492, vyw502, dbh)
new_esEs31(vyw501, vyw3001, app(ty_[], efh)) → new_esEs20(vyw501, vyw3001, efh)
new_compare26(vyw83, vyw84, True, dgd) → EQ
new_lt20(vyw118, vyw120, ty_@0) → new_lt16(vyw118, vyw120)
new_ltEs10(Nothing, Nothing, dha) → True
new_compare30(vyw50, vyw300, app(ty_Ratio, fcf)) → new_compare18(vyw50, vyw300, fcf)
new_ltEs10(Just(vyw490), Just(vyw500), app(app(app(ty_@3, bbd), bbe), bbf)) → new_ltEs5(vyw490, vyw500, bbd, bbe, bbf)
new_esEs28(vyw490, vyw500, app(ty_Maybe, ha)) → new_esEs24(vyw490, vyw500, ha)
new_not(False) → True
new_ltEs8(Right(vyw490), Right(vyw500), cb, app(app(ty_Either, cc), cd)) → new_ltEs8(vyw490, vyw500, cc, cd)
new_ltEs6(vyw492, vyw502, app(ty_Maybe, ee)) → new_ltEs10(vyw492, vyw502, ee)
new_esEs9(vyw50, vyw300, ty_@0) → new_esEs16(vyw50, vyw300)
new_ltEs20(vyw49, vyw50, ty_Ordering) → new_ltEs13(vyw49, vyw50)
new_compare210(vyw56, vyw57, True, ceh, fcg) → EQ
new_primCmpInt(Pos(Succ(vyw500)), Pos(vyw300)) → new_primCmpNat0(Succ(vyw500), vyw300)
new_primPlusNat0(Zero, vyw30100) → Succ(vyw30100)
new_ltEs22(vyw119, vyw121, ty_Int) → new_ltEs14(vyw119, vyw121)
new_ltEs23(vyw491, vyw501, app(app(ty_Either, bcd), bce)) → new_ltEs8(vyw491, vyw501, bcd, bce)
new_ltEs23(vyw491, vyw501, app(ty_[], bda)) → new_ltEs9(vyw491, vyw501, bda)
new_compare17(vyw185, vyw186, vyw187, vyw188, False, dgf, dgg) → GT
new_esEs34(vyw490, vyw500, app(ty_Ratio, fdd)) → new_esEs25(vyw490, vyw500, fdd)
new_lt6(vyw490, vyw500, ty_@0) → new_lt16(vyw490, vyw500)
new_compare6(GT, LT) → GT
new_ltEs24(vyw107, vyw110, app(app(ty_Either, bgf), bgg)) → new_ltEs8(vyw107, vyw110, bgf, bgg)
new_lt20(vyw118, vyw120, app(ty_[], ced)) → new_lt10(vyw118, vyw120, ced)
new_esEs34(vyw490, vyw500, ty_Char) → new_esEs19(vyw490, vyw500)
new_esEs31(vyw501, vyw3001, app(ty_Maybe, ege)) → new_esEs24(vyw501, vyw3001, ege)
new_lt21(vyw490, vyw500, app(app(app(ty_@3, bdh), bea), beb)) → new_lt9(vyw490, vyw500, bdh, bea, beb)
new_esEs33(vyw118, vyw120, ty_Char) → new_esEs19(vyw118, vyw120)
new_lt22(vyw105, vyw108, ty_Double) → new_lt14(vyw105, vyw108)
new_esEs22(Left(vyw500), Left(vyw3000), app(app(ty_Either, dhh), eaa), dhc) → new_esEs22(vyw500, vyw3000, dhh, eaa)
new_esEs24(Just(vyw500), Just(vyw3000), ty_Double) → new_esEs17(vyw500, vyw3000)
new_lt22(vyw105, vyw108, ty_Integer) → new_lt7(vyw105, vyw108)
new_compare0(:(vyw50, vyw51), [], he) → GT
new_ltEs24(vyw107, vyw110, ty_Float) → new_ltEs4(vyw107, vyw110)
new_esEs11(vyw50, vyw300, app(ty_Ratio, dbg)) → new_esEs25(vyw50, vyw300, dbg)
new_esEs36(vyw500, vyw3000, ty_@0) → new_esEs16(vyw500, vyw3000)
new_esEs30(vyw502, vyw3002, app(ty_[], eef)) → new_esEs20(vyw502, vyw3002, eef)
new_lt6(vyw490, vyw500, ty_Int) → new_lt15(vyw490, vyw500)
new_compare30(vyw50, vyw300, ty_Integer) → new_compare29(vyw50, vyw300)
new_esEs26(EQ, GT) → False
new_esEs26(GT, EQ) → False
new_primCmpInt(Pos(Succ(vyw500)), Neg(vyw300)) → GT
new_ltEs24(vyw107, vyw110, ty_Ordering) → new_ltEs13(vyw107, vyw110)
new_ltEs10(Just(vyw490), Just(vyw500), app(ty_[], bbg)) → new_ltEs9(vyw490, vyw500, bbg)
new_lt6(vyw490, vyw500, ty_Integer) → new_lt7(vyw490, vyw500)
new_esEs29(vyw500, vyw3000, ty_@0) → new_esEs16(vyw500, vyw3000)
new_esEs22(Left(vyw500), Left(vyw3000), ty_Char, dhc) → new_esEs19(vyw500, vyw3000)
new_ltEs6(vyw492, vyw502, ty_Integer) → new_ltEs7(vyw492, vyw502)
new_lt6(vyw490, vyw500, app(ty_[], gh)) → new_lt10(vyw490, vyw500, gh)
new_primMulInt(Pos(vyw510), Pos(vyw3010)) → Pos(new_primMulNat0(vyw510, vyw3010))
new_esEs4(vyw50, vyw300, app(ty_[], ecb)) → new_esEs20(vyw50, vyw300, ecb)
new_ltEs21(vyw56, vyw57, ty_Ordering) → new_ltEs13(vyw56, vyw57)
new_ltEs20(vyw49, vyw50, ty_Bool) → new_ltEs17(vyw49, vyw50)
new_lt22(vyw105, vyw108, ty_@0) → new_lt16(vyw105, vyw108)
new_ltEs7(vyw49, vyw50) → new_fsEs(new_compare29(vyw49, vyw50))
new_ltEs10(Just(vyw490), Just(vyw500), ty_Integer) → new_ltEs7(vyw490, vyw500)
new_primMulInt(Neg(vyw510), Neg(vyw3010)) → Pos(new_primMulNat0(vyw510, vyw3010))
new_lt16(vyw5, vyw30) → new_esEs12(new_compare5(vyw5, vyw30))
new_esEs10(vyw51, vyw301, ty_Float) → new_esEs13(vyw51, vyw301)
new_esEs5(vyw50, vyw300, ty_Ordering) → new_esEs26(vyw50, vyw300)
new_primEqNat0(Succ(vyw5000), Zero) → False
new_primEqNat0(Zero, Succ(vyw30000)) → False
new_ltEs8(Left(vyw490), Left(vyw500), app(app(ty_Either, h), ba), bb) → new_ltEs8(vyw490, vyw500, h, ba)
new_esEs10(vyw51, vyw301, ty_Double) → new_esEs17(vyw51, vyw301)
new_ltEs22(vyw119, vyw121, ty_@0) → new_ltEs15(vyw119, vyw121)
new_ltEs21(vyw56, vyw57, ty_Integer) → new_ltEs7(vyw56, vyw57)
new_compare30(vyw50, vyw300, ty_Bool) → new_compare9(vyw50, vyw300)
new_ltEs22(vyw119, vyw121, ty_Ordering) → new_ltEs13(vyw119, vyw121)
new_esEs22(Left(vyw500), Left(vyw3000), app(app(app(ty_@3, dhd), dhe), dhf), dhc) → new_esEs15(vyw500, vyw3000, dhd, dhe, dhf)
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_esEs11(vyw50, vyw300, ty_Char) → new_esEs19(vyw50, vyw300)
new_esEs33(vyw118, vyw120, app(ty_Maybe, cee)) → new_esEs24(vyw118, vyw120, cee)
new_lt20(vyw118, vyw120, app(app(ty_Either, cdf), cdg)) → new_lt8(vyw118, vyw120, cdf, cdg)
new_esEs35(vyw501, vyw3001, ty_Ordering) → new_esEs26(vyw501, vyw3001)
new_ltEs10(Just(vyw490), Just(vyw500), ty_Char) → new_ltEs16(vyw490, vyw500)
new_esEs21(Integer(vyw500), Integer(vyw3000)) → new_primEqInt(vyw500, vyw3000)
new_esEs11(vyw50, vyw300, app(ty_Maybe, dbf)) → new_esEs24(vyw50, vyw300, dbf)
new_esEs6(vyw52, vyw302, ty_Integer) → new_esEs21(vyw52, vyw302)
new_lt21(vyw490, vyw500, ty_Float) → new_lt11(vyw490, vyw500)
new_esEs38(vyw105, vyw108, app(ty_Ratio, fha)) → new_esEs25(vyw105, vyw108, fha)
new_esEs35(vyw501, vyw3001, ty_@0) → new_esEs16(vyw501, vyw3001)
new_esEs5(vyw50, vyw300, ty_Bool) → new_esEs18(vyw50, vyw300)
new_lt20(vyw118, vyw120, ty_Bool) → new_lt18(vyw118, vyw120)
new_esEs32(vyw500, vyw3000, ty_Bool) → new_esEs18(vyw500, vyw3000)
new_ltEs21(vyw56, vyw57, app(app(app(ty_@3, cfc), cfd), cfe)) → new_ltEs5(vyw56, vyw57, cfc, cfd, cfe)
new_esEs11(vyw50, vyw300, ty_Float) → new_esEs13(vyw50, vyw300)
new_ltEs20(vyw49, vyw50, ty_Float) → new_ltEs4(vyw49, vyw50)
new_esEs8(vyw50, vyw300, app(app(ty_@2, dee), def)) → new_esEs23(vyw50, vyw300, dee, def)
new_ltEs23(vyw491, vyw501, ty_Integer) → new_ltEs7(vyw491, vyw501)
new_lt5(vyw491, vyw501, ty_Double) → new_lt14(vyw491, vyw501)
new_ltEs10(Just(vyw490), Just(vyw500), app(ty_Ratio, dhb)) → new_ltEs18(vyw490, vyw500, dhb)
new_esEs7(vyw51, vyw301, app(ty_Ratio, fcd)) → new_esEs25(vyw51, vyw301, fcd)
new_esEs37(vyw106, vyw109, app(ty_[], cad)) → new_esEs20(vyw106, vyw109, cad)
new_compare13(vyw155, vyw156, False, eca) → GT
new_ltEs22(vyw119, vyw121, app(app(ty_@2, cdd), cde)) → new_ltEs11(vyw119, vyw121, cdd, cde)
new_esEs38(vyw105, vyw108, ty_Int) → new_esEs14(vyw105, vyw108)
new_esEs22(Left(vyw500), Left(vyw3000), ty_Integer, dhc) → new_esEs21(vyw500, vyw3000)
new_ltEs22(vyw119, vyw121, ty_Float) → new_ltEs4(vyw119, vyw121)
new_primCmpInt(Neg(Zero), Neg(Succ(vyw3000))) → new_primCmpNat0(Succ(vyw3000), Zero)
new_esEs6(vyw52, vyw302, app(ty_Ratio, fbb)) → new_esEs25(vyw52, vyw302, fbb)
new_ltEs22(vyw119, vyw121, ty_Char) → new_ltEs16(vyw119, vyw121)
new_primCmpInt(Pos(Zero), Neg(Succ(vyw3000))) → GT
new_esEs32(vyw500, vyw3000, ty_Float) → new_esEs13(vyw500, vyw3000)
new_ltEs10(Just(vyw490), Nothing, dha) → False
new_esEs4(vyw50, vyw300, app(app(ty_Either, eaf), dhc)) → new_esEs22(vyw50, vyw300, eaf, dhc)
new_ltEs19(vyw83, vyw84, ty_Bool) → new_ltEs17(vyw83, vyw84)
new_compare28(vyw49, vyw50, False, fce, bba) → new_compare111(vyw49, vyw50, new_ltEs20(vyw49, vyw50, fce), fce, bba)
new_lt22(vyw105, vyw108, app(ty_Ratio, fha)) → new_lt19(vyw105, vyw108, fha)
new_esEs27(vyw491, vyw501, app(app(ty_@2, ga), gb)) → new_esEs23(vyw491, vyw501, ga, gb)
new_esEs9(vyw50, vyw300, app(app(app(ty_@3, dce), dcf), dcg)) → new_esEs15(vyw50, vyw300, dce, dcf, dcg)
new_esEs7(vyw51, vyw301, ty_Ordering) → new_esEs26(vyw51, vyw301)
new_lt21(vyw490, vyw500, ty_Ordering) → new_lt4(vyw490, vyw500)
new_esEs36(vyw500, vyw3000, app(ty_[], ffd)) → new_esEs20(vyw500, vyw3000, ffd)
new_ltEs24(vyw107, vyw110, app(ty_Ratio, fhb)) → new_ltEs18(vyw107, vyw110, fhb)
new_esEs5(vyw50, vyw300, ty_@0) → new_esEs16(vyw50, vyw300)
new_compare30(vyw50, vyw300, ty_Float) → new_compare8(vyw50, vyw300)
new_lt20(vyw118, vyw120, app(ty_Ratio, fdb)) → new_lt19(vyw118, vyw120, fdb)
new_esEs22(Left(vyw500), Left(vyw3000), ty_Float, dhc) → new_esEs13(vyw500, vyw3000)
new_ltEs10(Nothing, Just(vyw500), dha) → True
new_compare12(Just(vyw50), Just(vyw300), cah) → new_compare26(vyw50, vyw300, new_esEs9(vyw50, vyw300, cah), cah)
new_esEs27(vyw491, vyw501, app(ty_Ratio, dca)) → new_esEs25(vyw491, vyw501, dca)
new_compare112(vyw170, vyw171, vyw172, vyw173, vyw174, vyw175, False, vyw177, fgf, fgg, fgh) → new_compare113(vyw170, vyw171, vyw172, vyw173, vyw174, vyw175, vyw177, fgf, fgg, fgh)
new_lt23(vyw106, vyw109, ty_Ordering) → new_lt4(vyw106, vyw109)
new_esEs19(Char(vyw500), Char(vyw3000)) → new_primEqNat0(vyw500, vyw3000)
new_esEs32(vyw500, vyw3000, ty_Integer) → new_esEs21(vyw500, vyw3000)
new_lt11(vyw5, vyw30) → new_esEs12(new_compare8(vyw5, vyw30))
new_ltEs8(Right(vyw490), Right(vyw500), cb, ty_Bool) → new_ltEs17(vyw490, vyw500)
new_esEs27(vyw491, vyw501, ty_Int) → new_esEs14(vyw491, vyw501)
new_ltEs24(vyw107, vyw110, ty_Bool) → new_ltEs17(vyw107, vyw110)
new_lt23(vyw106, vyw109, app(app(ty_Either, bhg), bhh)) → new_lt8(vyw106, vyw109, bhg, bhh)
new_primCompAux0(vyw50, vyw300, vyw44, he) → new_primCompAux00(vyw44, new_compare30(vyw50, vyw300, he))
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_esEs27(vyw491, vyw501, ty_Float) → new_esEs13(vyw491, vyw501)
new_esEs10(vyw51, vyw301, app(ty_Maybe, dad)) → new_esEs24(vyw51, vyw301, dad)
new_compare30(vyw50, vyw300, app(ty_[], bac)) → new_compare0(vyw50, vyw300, bac)
new_ltEs13(GT, GT) → True
new_compare6(LT, GT) → LT
new_asAs(False, vyw150) → False
new_esEs7(vyw51, vyw301, ty_Bool) → new_esEs18(vyw51, vyw301)
new_esEs6(vyw52, vyw302, app(app(ty_Either, fae), faf)) → new_esEs22(vyw52, vyw302, fae, faf)
new_ltEs24(vyw107, vyw110, ty_Int) → new_ltEs14(vyw107, vyw110)
new_esEs5(vyw50, vyw300, ty_Integer) → new_esEs21(vyw50, vyw300)
new_lt12(vyw5, vyw30, cah) → new_esEs12(new_compare12(vyw5, vyw30, cah))
new_primMulInt(Pos(vyw510), Neg(vyw3010)) → Neg(new_primMulNat0(vyw510, vyw3010))
new_primMulInt(Neg(vyw510), Pos(vyw3010)) → Neg(new_primMulNat0(vyw510, vyw3010))
new_ltEs6(vyw492, vyw502, ty_Float) → new_ltEs4(vyw492, vyw502)
new_primMulNat0(Zero, Succ(vyw30100)) → Zero
new_primMulNat0(Succ(vyw5100), Zero) → Zero
new_lt15(vyw5, vyw30) → new_esEs12(new_compare15(vyw5, vyw30))
new_ltEs22(vyw119, vyw121, app(ty_Maybe, cdc)) → new_ltEs10(vyw119, vyw121, cdc)
new_esEs5(vyw50, vyw300, ty_Char) → new_esEs19(vyw50, vyw300)
new_ltEs20(vyw49, vyw50, ty_Integer) → new_ltEs7(vyw49, vyw50)
new_esEs38(vyw105, vyw108, ty_@0) → new_esEs16(vyw105, vyw108)
new_esEs18(True, True) → True
new_ltEs19(vyw83, vyw84, ty_Char) → new_ltEs16(vyw83, vyw84)
new_ltEs6(vyw492, vyw502, ty_@0) → new_ltEs15(vyw492, vyw502)
new_esEs29(vyw500, vyw3000, ty_Double) → new_esEs17(vyw500, vyw3000)
new_lt21(vyw490, vyw500, app(app(ty_Either, bde), bdf)) → new_lt8(vyw490, vyw500, bde, bdf)
new_ltEs23(vyw491, vyw501, ty_Char) → new_ltEs16(vyw491, vyw501)
new_ltEs19(vyw83, vyw84, ty_Double) → new_ltEs12(vyw83, vyw84)
new_ltEs8(Left(vyw490), Left(vyw500), ty_Int, bb) → new_ltEs14(vyw490, vyw500)
new_ltEs8(Right(vyw490), Left(vyw500), cb, bb) → False
new_esEs31(vyw501, vyw3001, ty_Double) → new_esEs17(vyw501, vyw3001)
new_lt22(vyw105, vyw108, app(ty_[], bga)) → new_lt10(vyw105, vyw108, bga)
new_lt6(vyw490, vyw500, ty_Double) → new_lt14(vyw490, vyw500)
new_lt23(vyw106, vyw109, ty_Integer) → new_lt7(vyw106, vyw109)
new_lt22(vyw105, vyw108, ty_Char) → new_lt17(vyw105, vyw108)
new_lt23(vyw106, vyw109, ty_Float) → new_lt11(vyw106, vyw109)
new_ltEs24(vyw107, vyw110, app(ty_[], bhc)) → new_ltEs9(vyw107, vyw110, bhc)
new_ltEs17(True, True) → True
new_ltEs8(Right(vyw490), Right(vyw500), cb, app(app(app(ty_@3, ce), cf), cg)) → new_ltEs5(vyw490, vyw500, ce, cf, cg)
new_esEs37(vyw106, vyw109, ty_Ordering) → new_esEs26(vyw106, vyw109)
new_esEs27(vyw491, vyw501, ty_Double) → new_esEs17(vyw491, vyw501)
new_esEs28(vyw490, vyw500, ty_Bool) → new_esEs18(vyw490, vyw500)
new_esEs28(vyw490, vyw500, ty_Float) → new_esEs13(vyw490, vyw500)
new_lt14(vyw5, vyw30) → new_esEs12(new_compare14(vyw5, vyw30))
new_lt5(vyw491, vyw501, app(ty_[], fg)) → new_lt10(vyw491, vyw501, fg)
new_esEs9(vyw50, vyw300, ty_Integer) → new_esEs21(vyw50, vyw300)
new_esEs16(@0, @0) → True
new_lt6(vyw490, vyw500, app(ty_Maybe, ha)) → new_lt12(vyw490, vyw500, ha)
new_esEs6(vyw52, vyw302, app(app(app(ty_@3, faa), fab), fac)) → new_esEs15(vyw52, vyw302, faa, fab, fac)
new_lt21(vyw490, vyw500, ty_Bool) → new_lt18(vyw490, vyw500)
new_lt23(vyw106, vyw109, app(app(ty_@2, caf), cag)) → new_lt13(vyw106, vyw109, caf, cag)
new_lt5(vyw491, vyw501, app(ty_Ratio, dca)) → new_lt19(vyw491, vyw501, dca)
new_esEs22(Left(vyw500), Left(vyw3000), app(ty_Maybe, ead), dhc) → new_esEs24(vyw500, vyw3000, ead)
new_esEs11(vyw50, vyw300, ty_Ordering) → new_esEs26(vyw50, vyw300)
new_esEs28(vyw490, vyw500, app(app(ty_@2, hb), hc)) → new_esEs23(vyw490, vyw500, hb, hc)
new_esEs8(vyw50, vyw300, app(ty_[], deb)) → new_esEs20(vyw50, vyw300, deb)
new_esEs22(Right(vyw500), Right(vyw3000), eaf, app(ty_Maybe, ebg)) → new_esEs24(vyw500, vyw3000, ebg)
new_esEs10(vyw51, vyw301, ty_Bool) → new_esEs18(vyw51, vyw301)
new_esEs28(vyw490, vyw500, ty_Char) → new_esEs19(vyw490, vyw500)
new_compare16(vyw185, vyw186, vyw187, vyw188, True, vyw190, dgf, dgg) → new_compare17(vyw185, vyw186, vyw187, vyw188, True, dgf, dgg)
new_esEs4(vyw50, vyw300, ty_Bool) → new_esEs18(vyw50, vyw300)
new_esEs8(vyw50, vyw300, app(ty_Maybe, deg)) → new_esEs24(vyw50, vyw300, deg)
new_esEs14(vyw50, vyw300) → new_primEqInt(vyw50, vyw300)
new_ltEs9(vyw49, vyw50, hd) → new_fsEs(new_compare0(vyw49, vyw50, hd))
new_ltEs21(vyw56, vyw57, ty_Char) → new_ltEs16(vyw56, vyw57)
new_esEs22(Right(vyw500), Right(vyw3000), eaf, app(app(app(ty_@3, eag), eah), eba)) → new_esEs15(vyw500, vyw3000, eag, eah, eba)
new_ltEs19(vyw83, vyw84, app(app(app(ty_@3, cbc), cbd), cbe)) → new_ltEs5(vyw83, vyw84, cbc, cbd, cbe)
new_compare9(False, True) → LT
new_esEs4(vyw50, vyw300, ty_Double) → new_esEs17(vyw50, vyw300)
new_lt6(vyw490, vyw500, app(app(ty_@2, hb), hc)) → new_lt13(vyw490, vyw500, hb, hc)
new_esEs30(vyw502, vyw3002, app(app(ty_Either, eeg), eeh)) → new_esEs22(vyw502, vyw3002, eeg, eeh)
new_esEs10(vyw51, vyw301, app(app(ty_@2, dab), dac)) → new_esEs23(vyw51, vyw301, dab, dac)
new_compare30(vyw50, vyw300, ty_Int) → new_compare15(vyw50, vyw300)
new_esEs8(vyw50, vyw300, ty_Float) → new_esEs13(vyw50, vyw300)
new_esEs8(vyw50, vyw300, ty_Integer) → new_esEs21(vyw50, vyw300)
new_lt22(vyw105, vyw108, ty_Float) → new_lt11(vyw105, vyw108)
new_ltEs21(vyw56, vyw57, ty_@0) → new_ltEs15(vyw56, vyw57)
new_esEs31(vyw501, vyw3001, ty_Float) → new_esEs13(vyw501, vyw3001)
new_ltEs19(vyw83, vyw84, app(ty_Maybe, cbg)) → new_ltEs10(vyw83, vyw84, cbg)
new_ltEs8(Right(vyw490), Right(vyw500), cb, ty_Double) → new_ltEs12(vyw490, vyw500)
new_lt20(vyw118, vyw120, ty_Float) → new_lt11(vyw118, vyw120)
new_ltEs17(False, True) → True
new_compare6(EQ, GT) → LT
new_esEs31(vyw501, vyw3001, ty_Integer) → new_esEs21(vyw501, vyw3001)
new_esEs9(vyw50, vyw300, ty_Int) → new_esEs14(vyw50, vyw300)
new_lt21(vyw490, vyw500, app(ty_Ratio, fdd)) → new_lt19(vyw490, vyw500, fdd)
new_esEs35(vyw501, vyw3001, app(app(ty_@2, fee), fef)) → new_esEs23(vyw501, vyw3001, fee, fef)
new_ltEs21(vyw56, vyw57, ty_Bool) → new_ltEs17(vyw56, vyw57)
new_ltEs22(vyw119, vyw121, app(ty_[], cdb)) → new_ltEs9(vyw119, vyw121, cdb)
new_compare9(True, True) → EQ
new_esEs11(vyw50, vyw300, app(app(ty_@2, dbd), dbe)) → new_esEs23(vyw50, vyw300, dbd, dbe)
new_esEs6(vyw52, vyw302, ty_Char) → new_esEs19(vyw52, vyw302)
new_esEs18(True, False) → False
new_esEs18(False, True) → False
new_ltEs20(vyw49, vyw50, ty_Double) → new_ltEs12(vyw49, vyw50)
new_lt18(vyw5, vyw30) → new_esEs12(new_compare9(vyw5, vyw30))
new_esEs29(vyw500, vyw3000, ty_Bool) → new_esEs18(vyw500, vyw3000)
new_lt6(vyw490, vyw500, ty_Float) → new_lt11(vyw490, vyw500)
new_esEs7(vyw51, vyw301, app(ty_[], fbf)) → new_esEs20(vyw51, vyw301, fbf)
new_lt19(vyw5, vyw30, ede) → new_esEs12(new_compare18(vyw5, vyw30, ede))
new_esEs27(vyw491, vyw501, ty_Bool) → new_esEs18(vyw491, vyw501)
new_esEs29(vyw500, vyw3000, app(app(ty_Either, ecg), ech)) → new_esEs22(vyw500, vyw3000, ecg, ech)
new_ltEs13(LT, LT) → True
new_ltEs6(vyw492, vyw502, ty_Int) → new_ltEs14(vyw492, vyw502)
new_ltEs19(vyw83, vyw84, ty_Integer) → new_ltEs7(vyw83, vyw84)
new_ltEs6(vyw492, vyw502, ty_Char) → new_ltEs16(vyw492, vyw502)
new_esEs28(vyw490, vyw500, ty_Double) → new_esEs17(vyw490, vyw500)
new_ltEs23(vyw491, vyw501, ty_@0) → new_ltEs15(vyw491, vyw501)
new_ltEs8(Left(vyw490), Left(vyw500), ty_Double, bb) → new_ltEs12(vyw490, vyw500)
new_esEs33(vyw118, vyw120, app(ty_[], ced)) → new_esEs20(vyw118, vyw120, ced)
new_esEs36(vyw500, vyw3000, ty_Integer) → new_esEs21(vyw500, vyw3000)
new_compare0([], :(vyw300, vyw301), he) → LT
new_primPlusNat1(Zero, Zero) → Zero
new_compare111(vyw134, vyw135, True, fgc, fgd) → LT
new_compare12(Just(vyw50), Nothing, cah) → GT
new_esEs9(vyw50, vyw300, ty_Char) → new_esEs19(vyw50, vyw300)
new_lt21(vyw490, vyw500, ty_Integer) → new_lt7(vyw490, vyw500)
new_ltEs8(Left(vyw490), Left(vyw500), ty_@0, bb) → new_ltEs15(vyw490, vyw500)
new_asAs(True, vyw150) → vyw150
new_esEs4(vyw50, vyw300, ty_Integer) → new_esEs21(vyw50, vyw300)
new_compare11(Char(vyw50), Char(vyw300)) → new_primCmpNat0(vyw50, vyw300)
new_esEs22(Right(vyw500), Right(vyw3000), eaf, ty_@0) → new_esEs16(vyw500, vyw3000)
new_primMulNat0(Succ(vyw5100), Succ(vyw30100)) → new_primPlusNat0(new_primMulNat0(vyw5100, Succ(vyw30100)), vyw30100)
new_ltEs11(@2(vyw490, vyw491), @2(vyw500, vyw501), bcc, bdg) → new_pePe(new_lt21(vyw490, vyw500, bcc), new_asAs(new_esEs34(vyw490, vyw500, bcc), new_ltEs23(vyw491, vyw501, bdg)))
new_esEs22(Right(vyw500), Right(vyw3000), eaf, ty_Integer) → new_esEs21(vyw500, vyw3000)
new_ltEs6(vyw492, vyw502, app(app(ty_Either, dg), dh)) → new_ltEs8(vyw492, vyw502, dg, dh)
new_ltEs20(vyw49, vyw50, app(app(ty_Either, cb), bb)) → new_ltEs8(vyw49, vyw50, cb, bb)
new_esEs17(Double(vyw500, vyw501), Double(vyw3000, vyw3001)) → new_esEs14(new_sr(vyw500, vyw3000), new_sr(vyw501, vyw3001))
new_esEs24(Just(vyw500), Just(vyw3000), app(app(app(ty_@3, dfb), dfc), dfd)) → new_esEs15(vyw500, vyw3000, dfb, dfc, dfd)
new_lt6(vyw490, vyw500, ty_Char) → new_lt17(vyw490, vyw500)
new_lt9(vyw5, vyw30, beg, beh, bfa) → new_esEs12(new_compare10(vyw5, vyw30, beg, beh, bfa))
new_esEs24(Just(vyw500), Just(vyw3000), app(ty_[], dfe)) → new_esEs20(vyw500, vyw3000, dfe)
new_esEs22(Left(vyw500), Left(vyw3000), ty_Ordering, dhc) → new_esEs26(vyw500, vyw3000)
new_esEs22(Right(vyw500), Right(vyw3000), eaf, ty_Ordering) → new_esEs26(vyw500, vyw3000)
new_ltEs10(Just(vyw490), Just(vyw500), ty_Int) → new_ltEs14(vyw490, vyw500)
new_esEs22(Left(vyw500), Left(vyw3000), ty_Bool, dhc) → new_esEs18(vyw500, vyw3000)
new_esEs33(vyw118, vyw120, app(app(app(ty_@3, cea), ceb), cec)) → new_esEs15(vyw118, vyw120, cea, ceb, cec)
new_esEs10(vyw51, vyw301, app(app(ty_Either, chh), daa)) → new_esEs22(vyw51, vyw301, chh, daa)
new_lt21(vyw490, vyw500, ty_Double) → new_lt14(vyw490, vyw500)
new_esEs35(vyw501, vyw3001, ty_Double) → new_esEs17(vyw501, vyw3001)
new_esEs29(vyw500, vyw3000, ty_Integer) → new_esEs21(vyw500, vyw3000)
new_esEs27(vyw491, vyw501, app(app(app(ty_@3, fc), fd), ff)) → new_esEs15(vyw491, vyw501, fc, fd, ff)
new_esEs22(Right(vyw500), Left(vyw3000), eaf, dhc) → False
new_esEs22(Left(vyw500), Right(vyw3000), eaf, dhc) → False
new_ltEs10(Just(vyw490), Just(vyw500), ty_Ordering) → new_ltEs13(vyw490, vyw500)
new_ltEs8(Left(vyw490), Right(vyw500), cb, bb) → True
new_esEs37(vyw106, vyw109, ty_Integer) → new_esEs21(vyw106, vyw109)
new_esEs5(vyw50, vyw300, app(app(ty_Either, cgf), cgg)) → new_esEs22(vyw50, vyw300, cgf, cgg)
new_ltEs20(vyw49, vyw50, app(ty_Maybe, dha)) → new_ltEs10(vyw49, vyw50, dha)
new_compare30(vyw50, vyw300, ty_@0) → new_compare5(vyw50, vyw300)
new_esEs30(vyw502, vyw3002, app(app(app(ty_@3, eec), eed), eee)) → new_esEs15(vyw502, vyw3002, eec, eed, eee)
new_ltEs6(vyw492, vyw502, app(ty_[], ed)) → new_ltEs9(vyw492, vyw502, ed)
new_esEs8(vyw50, vyw300, ty_@0) → new_esEs16(vyw50, vyw300)
new_esEs37(vyw106, vyw109, ty_Char) → new_esEs19(vyw106, vyw109)
new_esEs36(vyw500, vyw3000, ty_Float) → new_esEs13(vyw500, vyw3000)
new_esEs6(vyw52, vyw302, ty_@0) → new_esEs16(vyw52, vyw302)
new_lt6(vyw490, vyw500, app(ty_Ratio, dcb)) → new_lt19(vyw490, vyw500, dcb)
new_compare6(GT, EQ) → GT
new_esEs36(vyw500, vyw3000, app(app(ty_@2, ffg), ffh)) → new_esEs23(vyw500, vyw3000, ffg, ffh)
new_esEs32(vyw500, vyw3000, ty_Char) → new_esEs19(vyw500, vyw3000)
new_lt23(vyw106, vyw109, ty_Int) → new_lt15(vyw106, vyw109)
new_esEs11(vyw50, vyw300, app(app(ty_Either, dbb), dbc)) → new_esEs22(vyw50, vyw300, dbb, dbc)
new_ltEs22(vyw119, vyw121, ty_Double) → new_ltEs12(vyw119, vyw121)
new_compare26(vyw83, vyw84, False, dgd) → new_compare13(vyw83, vyw84, new_ltEs19(vyw83, vyw84, dgd), dgd)
new_ltEs6(vyw492, vyw502, ty_Double) → new_ltEs12(vyw492, vyw502)
new_primCompAux00(vyw77, GT) → GT
new_compare25(vyw118, vyw119, vyw120, vyw121, False, ccd, cdh) → new_compare16(vyw118, vyw119, vyw120, vyw121, new_lt20(vyw118, vyw120, ccd), new_asAs(new_esEs33(vyw118, vyw120, ccd), new_ltEs22(vyw119, vyw121, cdh)), ccd, cdh)
new_ltEs6(vyw492, vyw502, app(app(ty_@2, ef), eg)) → new_ltEs11(vyw492, vyw502, ef, eg)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_esEs37(vyw106, vyw109, ty_Float) → new_esEs13(vyw106, vyw109)
new_ltEs8(Left(vyw490), Left(vyw500), ty_Integer, bb) → new_ltEs7(vyw490, vyw500)
new_ltEs23(vyw491, vyw501, app(app(app(ty_@3, bcf), bcg), bch)) → new_ltEs5(vyw491, vyw501, bcf, bcg, bch)
new_esEs36(vyw500, vyw3000, ty_Int) → new_esEs14(vyw500, vyw3000)
new_lt20(vyw118, vyw120, app(ty_Maybe, cee)) → new_lt12(vyw118, vyw120, cee)
new_compare112(vyw170, vyw171, vyw172, vyw173, vyw174, vyw175, True, vyw177, fgf, fgg, fgh) → new_compare113(vyw170, vyw171, vyw172, vyw173, vyw174, vyw175, True, fgf, fgg, fgh)
new_esEs5(vyw50, vyw300, app(ty_[], cge)) → new_esEs20(vyw50, vyw300, cge)
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_esEs22(Right(vyw500), Right(vyw3000), eaf, app(app(ty_Either, ebc), ebd)) → new_esEs22(vyw500, vyw3000, ebc, ebd)
new_ltEs10(Just(vyw490), Just(vyw500), ty_Double) → new_ltEs12(vyw490, vyw500)
new_compare30(vyw50, vyw300, ty_Ordering) → new_compare6(vyw50, vyw300)
new_primCmpInt(Neg(Succ(vyw500)), Pos(vyw300)) → LT
new_esEs10(vyw51, vyw301, app(ty_[], chg)) → new_esEs20(vyw51, vyw301, chg)
new_ltEs19(vyw83, vyw84, ty_Ordering) → new_ltEs13(vyw83, vyw84)
new_not(True) → False
new_esEs18(False, False) → True
new_esEs7(vyw51, vyw301, ty_Double) → new_esEs17(vyw51, vyw301)

The set Q consists of the following terms:

new_lt12(x0, x1, x2)
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_compare9(False, True)
new_compare9(True, False)
new_esEs22(Left(x0), Left(x1), ty_Double, x2)
new_esEs29(x0, x1, ty_@0)
new_sr0(Integer(x0), Integer(x1))
new_esEs29(x0, x1, ty_Int)
new_esEs36(x0, x1, ty_@0)
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs26(GT, GT)
new_esEs36(x0, x1, ty_Char)
new_ltEs8(Right(x0), Right(x1), x2, ty_Bool)
new_ltEs23(x0, x1, ty_Char)
new_lt20(x0, x1, ty_Double)
new_esEs24(Just(x0), Just(x1), ty_Int)
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_compare30(x0, x1, app(ty_[], x2))
new_esEs38(x0, x1, ty_@0)
new_lt6(x0, x1, ty_Int)
new_lt6(x0, x1, ty_Bool)
new_esEs25(:%(x0, x1), :%(x2, x3), x4)
new_ltEs19(x0, x1, ty_@0)
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs26(EQ, GT)
new_esEs26(GT, EQ)
new_esEs4(x0, x1, app(ty_[], x2))
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, ty_Integer)
new_esEs26(LT, LT)
new_ltEs8(Left(x0), Left(x1), ty_Char, x2)
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_esEs34(x0, x1, ty_Int)
new_esEs6(x0, x1, ty_Ordering)
new_lt6(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs6(x0, x1, ty_Integer)
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_esEs32(x0, x1, ty_Integer)
new_ltEs20(x0, x1, ty_Int)
new_asAs(False, x0)
new_esEs30(x0, x1, ty_Ordering)
new_esEs27(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_esEs15(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_esEs27(x0, x1, ty_Double)
new_compare210(x0, x1, True, x2, x3)
new_compare28(x0, x1, True, x2, x3)
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_ltEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs24(x0, x1, ty_Double)
new_lt22(x0, x1, ty_Char)
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_compare14(Double(x0, x1), Double(x2, x3))
new_lt5(x0, x1, ty_@0)
new_esEs29(x0, x1, ty_Double)
new_compare30(x0, x1, app(ty_Maybe, x2))
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_pePe(True, x0)
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs8(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs7(x0, x1, ty_Char)
new_esEs36(x0, x1, ty_Int)
new_ltEs19(x0, x1, ty_Integer)
new_compare12(Nothing, Just(x0), x1)
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs6(x0, x1, ty_Integer)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_esEs27(x0, x1, ty_@0)
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs21(x0, x1, ty_Double)
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_esEs29(x0, x1, ty_Bool)
new_ltEs8(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_esEs17(Double(x0, x1), Double(x2, x3))
new_ltEs22(x0, x1, ty_Integer)
new_primMulInt(Pos(x0), Neg(x1))
new_primMulInt(Neg(x0), Pos(x1))
new_ltEs22(x0, x1, ty_Char)
new_ltEs21(x0, x1, ty_Bool)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare6(LT, EQ)
new_compare6(EQ, LT)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_compare110(x0, x1, False, x2, x3)
new_esEs8(x0, x1, ty_@0)
new_esEs27(x0, x1, ty_Integer)
new_esEs18(True, True)
new_lt5(x0, x1, app(ty_Maybe, x2))
new_lt21(x0, x1, ty_Integer)
new_esEs32(x0, x1, ty_Bool)
new_esEs9(x0, x1, ty_Ordering)
new_esEs9(x0, x1, ty_Integer)
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, app(ty_[], x2))
new_compare0([], [], x0)
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs6(x0, x1, ty_Double)
new_esEs22(Left(x0), Left(x1), ty_@0, x2)
new_compare30(x0, x1, ty_Bool)
new_primMulInt(Pos(x0), Pos(x1))
new_esEs16(@0, @0)
new_esEs4(x0, x1, ty_Int)
new_esEs28(x0, x1, ty_Bool)
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_compare19(Left(x0), Left(x1), x2, x3)
new_compare9(True, True)
new_lt22(x0, x1, ty_Double)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_esEs22(Right(x0), Left(x1), x2, x3)
new_esEs22(Left(x0), Right(x1), x2, x3)
new_esEs31(x0, x1, ty_Double)
new_compare30(x0, x1, app(app(ty_Either, x2), x3))
new_esEs31(x0, x1, ty_Int)
new_ltEs19(x0, x1, ty_Int)
new_primCompAux0(x0, x1, x2, x3)
new_esEs24(Nothing, Just(x0), x1)
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs40(x0, x1, ty_Integer)
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs29(x0, x1, app(ty_[], x2))
new_compare111(x0, x1, True, x2, x3)
new_ltEs23(x0, x1, ty_Int)
new_lt6(x0, x1, ty_@0)
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_esEs20(:(x0, x1), :(x2, x3), x4)
new_lt17(x0, x1)
new_ltEs8(Left(x0), Left(x1), ty_Ordering, x2)
new_primEqNat0(Succ(x0), Zero)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs8(Left(x0), Left(x1), ty_@0, x2)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare10(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs22(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt20(x0, x1, ty_Int)
new_compare111(x0, x1, False, x2, x3)
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primMulInt(Neg(x0), Neg(x1))
new_ltEs17(False, False)
new_compare5(@0, @0)
new_ltEs8(Right(x0), Right(x1), x2, ty_Int)
new_esEs36(x0, x1, ty_Bool)
new_ltEs9(x0, x1, x2)
new_esEs38(x0, x1, ty_Integer)
new_esEs8(x0, x1, ty_Ordering)
new_esEs22(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_esEs10(x0, x1, ty_Integer)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs22(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_primEqNat0(Zero, Zero)
new_compare15(x0, x1)
new_lt20(x0, x1, ty_Char)
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_esEs37(x0, x1, ty_Integer)
new_esEs19(Char(x0), Char(x1))
new_esEs11(x0, x1, ty_Double)
new_compare13(x0, x1, False, x2)
new_esEs9(x0, x1, ty_@0)
new_esEs38(x0, x1, ty_Float)
new_compare30(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Integer)
new_compare26(x0, x1, True, x2)
new_esEs7(x0, x1, ty_Float)
new_lt6(x0, x1, ty_Double)
new_esEs30(x0, x1, ty_Bool)
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs13(EQ, EQ)
new_compare210(x0, x1, False, x2, x3)
new_esEs4(x0, x1, ty_Integer)
new_ltEs6(x0, x1, ty_Int)
new_esEs7(x0, x1, ty_Double)
new_esEs22(Left(x0), Left(x1), ty_Ordering, x2)
new_ltEs23(x0, x1, ty_Double)
new_ltEs21(x0, x1, ty_Ordering)
new_primMulNat0(Zero, Zero)
new_esEs24(Just(x0), Just(x1), ty_@0)
new_esEs27(x0, x1, app(ty_Ratio, x2))
new_esEs22(Left(x0), Left(x1), app(ty_[], x2), x3)
new_compare30(x0, x1, app(ty_Ratio, x2))
new_compare29(Integer(x0), Integer(x1))
new_esEs6(x0, x1, ty_Double)
new_lt6(x0, x1, app(ty_[], x2))
new_esEs12(LT)
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt22(x0, x1, app(ty_[], x2))
new_ltEs20(x0, x1, app(ty_[], x2))
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs28(x0, x1, ty_Ordering)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_sr(x0, x1)
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_lt22(x0, x1, ty_Int)
new_esEs23(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs40(x0, x1, ty_Int)
new_ltEs14(x0, x1)
new_lt5(x0, x1, ty_Bool)
new_esEs33(x0, x1, ty_@0)
new_esEs8(x0, x1, ty_Float)
new_lt5(x0, x1, ty_Float)
new_esEs35(x0, x1, ty_Float)
new_esEs6(x0, x1, app(ty_[], x2))
new_ltEs6(x0, x1, ty_Bool)
new_lt4(x0, x1)
new_ltEs17(True, True)
new_ltEs13(EQ, LT)
new_ltEs13(LT, EQ)
new_esEs24(Just(x0), Just(x1), ty_Float)
new_ltEs21(x0, x1, ty_Float)
new_esEs36(x0, x1, app(ty_[], x2))
new_lt21(x0, x1, ty_Char)
new_esEs7(x0, x1, ty_Int)
new_esEs22(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_ltEs24(x0, x1, app(ty_[], x2))
new_primCmpNat0(Succ(x0), Zero)
new_esEs35(x0, x1, ty_Double)
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_ltEs8(Left(x0), Right(x1), x2, x3)
new_ltEs8(Right(x0), Left(x1), x2, x3)
new_esEs22(Left(x0), Left(x1), ty_Float, x2)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_esEs29(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_@0)
new_esEs38(x0, x1, ty_Char)
new_esEs31(x0, x1, app(ty_[], x2))
new_compare0(:(x0, x1), :(x2, x3), x4)
new_esEs24(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Char)
new_esEs9(x0, x1, ty_Float)
new_compare7(@2(x0, x1), @2(x2, x3), x4, x5)
new_ltEs6(x0, x1, ty_Float)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs16(x0, x1)
new_ltEs20(x0, x1, ty_Bool)
new_primPlusNat1(Zero, Succ(x0))
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, ty_Integer)
new_esEs28(x0, x1, app(ty_[], x2))
new_compare6(EQ, EQ)
new_primPlusNat0(Succ(x0), x1)
new_compare30(x0, x1, ty_Int)
new_esEs10(x0, x1, ty_Bool)
new_esEs18(False, False)
new_compare6(LT, GT)
new_compare6(GT, LT)
new_esEs11(x0, x1, ty_Ordering)
new_ltEs10(Nothing, Nothing, x0)
new_esEs4(x0, x1, ty_@0)
new_ltEs8(Right(x0), Right(x1), x2, ty_Integer)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_esEs28(x0, x1, ty_Float)
new_lt20(x0, x1, app(ty_Ratio, x2))
new_esEs22(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primMulNat0(Succ(x0), Zero)
new_ltEs8(Right(x0), Right(x1), x2, app(ty_[], x3))
new_compare6(LT, LT)
new_ltEs23(x0, x1, ty_Integer)
new_lt5(x0, x1, app(ty_Ratio, x2))
new_esEs24(Just(x0), Just(x1), ty_Double)
new_esEs7(x0, x1, ty_Integer)
new_compare16(x0, x1, x2, x3, False, x4, x5, x6)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_compare11(Char(x0), Char(x1))
new_ltEs8(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_lt23(x0, x1, ty_Char)
new_esEs22(Right(x0), Right(x1), x2, ty_Bool)
new_compare30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs28(x0, x1, ty_Integer)
new_ltEs8(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs22(Left(x0), Left(x1), ty_Bool, x2)
new_ltEs8(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_ltEs6(x0, x1, app(ty_[], x2))
new_esEs27(x0, x1, ty_Float)
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_lt23(x0, x1, ty_Ordering)
new_lt6(x0, x1, ty_Char)
new_esEs27(x0, x1, app(app(ty_@2, x2), x3))
new_esEs30(x0, x1, ty_Double)
new_esEs11(x0, x1, app(ty_[], x2))
new_esEs5(x0, x1, ty_Ordering)
new_ltEs5(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs33(x0, x1, ty_Char)
new_ltEs19(x0, x1, ty_Ordering)
new_esEs37(x0, x1, ty_Float)
new_primPlusNat1(Zero, Zero)
new_ltEs24(x0, x1, ty_Int)
new_lt21(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_@0)
new_esEs27(x0, x1, ty_Bool)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_ltEs15(x0, x1)
new_lt5(x0, x1, ty_Char)
new_esEs24(Just(x0), Just(x1), ty_Bool)
new_esEs4(x0, x1, ty_Bool)
new_lt21(x0, x1, ty_Double)
new_esEs22(Right(x0), Right(x1), x2, ty_@0)
new_esEs6(x0, x1, ty_Float)
new_esEs35(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Ordering)
new_esEs22(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs11(x0, x1, ty_Int)
new_esEs8(x0, x1, app(ty_[], x2))
new_ltEs24(x0, x1, ty_Char)
new_esEs32(x0, x1, ty_Double)
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_lt23(x0, x1, ty_@0)
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_compare30(x0, x1, app(app(ty_@2, x2), x3))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_primCompAux00(x0, LT)
new_compare30(x0, x1, ty_Float)
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs28(x0, x1, ty_@0)
new_ltEs24(x0, x1, ty_@0)
new_esEs34(x0, x1, ty_Char)
new_lt20(x0, x1, ty_Float)
new_ltEs12(x0, x1)
new_esEs7(x0, x1, ty_Bool)
new_lt6(x0, x1, app(app(ty_Either, x2), x3))
new_compare16(x0, x1, x2, x3, True, x4, x5, x6)
new_esEs35(x0, x1, app(ty_[], x2))
new_ltEs20(x0, x1, ty_Double)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_esEs11(x0, x1, ty_Bool)
new_esEs8(x0, x1, ty_Char)
new_lt11(x0, x1)
new_esEs34(x0, x1, ty_Float)
new_ltEs23(x0, x1, ty_Float)
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, ty_@0)
new_esEs11(x0, x1, ty_@0)
new_ltEs13(GT, EQ)
new_ltEs13(EQ, GT)
new_esEs8(x0, x1, ty_Int)
new_compare17(x0, x1, x2, x3, True, x4, x5)
new_compare113(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt5(x0, x1, ty_Double)
new_lt19(x0, x1, x2)
new_fsEs(x0)
new_compare18(:%(x0, x1), :%(x2, x3), ty_Int)
new_esEs37(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, ty_Bool)
new_esEs39(x0, x1, ty_Integer)
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, ty_Char)
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs14(x0, x1)
new_ltEs24(x0, x1, ty_Float)
new_esEs27(x0, x1, app(ty_[], x2))
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs18(x0, x1, x2)
new_esEs38(x0, x1, ty_Bool)
new_ltEs8(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs33(x0, x1, ty_Int)
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_ltEs8(Left(x0), Left(x1), ty_Int, x2)
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_primEqInt(Neg(Zero), Pos(Zero))
new_primEqInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_ltEs21(x0, x1, app(ty_[], x2))
new_ltEs6(x0, x1, ty_@0)
new_esEs37(x0, x1, ty_Bool)
new_esEs10(x0, x1, ty_@0)
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_ltEs21(x0, x1, ty_Integer)
new_lt21(x0, x1, app(ty_[], x2))
new_esEs28(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_compare27(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_lt10(x0, x1, x2)
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_esEs28(x0, x1, ty_Char)
new_esEs33(x0, x1, ty_Double)
new_lt23(x0, x1, app(ty_[], x2))
new_ltEs13(LT, GT)
new_ltEs13(GT, LT)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_lt23(x0, x1, app(ty_Maybe, x2))
new_esEs31(x0, x1, ty_Char)
new_ltEs7(x0, x1)
new_compare25(x0, x1, x2, x3, True, x4, x5)
new_esEs6(x0, x1, ty_@0)
new_esEs31(x0, x1, ty_Integer)
new_pePe(False, x0)
new_ltEs8(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_primCmpInt(Pos(Zero), Pos(Zero))
new_esEs18(True, False)
new_esEs18(False, True)
new_esEs26(GT, LT)
new_esEs26(LT, GT)
new_esEs9(x0, x1, ty_Int)
new_ltEs24(x0, x1, ty_Bool)
new_ltEs22(x0, x1, ty_Double)
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_primEqNat0(Zero, Succ(x0))
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_compare26(x0, x1, False, x2)
new_primEqInt(Neg(Zero), Neg(Zero))
new_compare30(x0, x1, ty_Char)
new_esEs20(:(x0, x1), [], x2)
new_ltEs8(Left(x0), Left(x1), ty_Integer, x2)
new_esEs6(x0, x1, ty_Int)
new_esEs6(x0, x1, ty_Bool)
new_esEs8(x0, x1, ty_Double)
new_esEs37(x0, x1, ty_Ordering)
new_lt7(x0, x1)
new_esEs38(x0, x1, ty_Double)
new_esEs22(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_ltEs22(x0, x1, ty_Int)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_ltEs21(x0, x1, ty_@0)
new_ltEs20(x0, x1, ty_Float)
new_compare12(Nothing, Nothing, x0)
new_esEs27(x0, x1, ty_Ordering)
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_ltEs19(x0, x1, app(ty_[], x2))
new_lt21(x0, x1, ty_Bool)
new_lt23(x0, x1, ty_Integer)
new_primEqNat0(Succ(x0), Succ(x1))
new_ltEs8(Left(x0), Left(x1), ty_Float, x2)
new_esEs24(Just(x0), Just(x1), ty_Char)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_lt5(x0, x1, ty_Ordering)
new_ltEs4(x0, x1)
new_lt5(x0, x1, ty_Integer)
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_lt14(x0, x1)
new_esEs22(Left(x0), Left(x1), ty_Char, x2)
new_lt21(x0, x1, app(ty_Ratio, x2))
new_esEs37(x0, x1, ty_Double)
new_lt5(x0, x1, ty_Int)
new_esEs4(x0, x1, ty_Ordering)
new_ltEs22(x0, x1, ty_@0)
new_esEs29(x0, x1, ty_Ordering)
new_esEs39(x0, x1, ty_Int)
new_esEs27(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_ltEs6(x0, x1, app(ty_Ratio, x2))
new_esEs27(x0, x1, ty_Int)
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs20(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt8(x0, x1, x2, x3)
new_esEs32(x0, x1, ty_Float)
new_esEs35(x0, x1, ty_Bool)
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare12(Just(x0), Just(x1), x2)
new_esEs22(Right(x0), Right(x1), x2, ty_Double)
new_esEs5(x0, x1, ty_Integer)
new_lt23(x0, x1, ty_Bool)
new_esEs22(Left(x0), Left(x1), ty_Int, x2)
new_esEs27(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, ty_@0)
new_compare8(Float(x0, x1), Float(x2, x3))
new_esEs34(x0, x1, app(ty_[], x2))
new_esEs21(Integer(x0), Integer(x1))
new_lt23(x0, x1, ty_Double)
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_compare30(x0, x1, ty_@0)
new_primCompAux00(x0, EQ)
new_ltEs21(x0, x1, ty_Int)
new_esEs29(x0, x1, ty_Integer)
new_ltEs19(x0, x1, ty_Double)
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs10(x0, x1, ty_Int)
new_compare19(Right(x0), Right(x1), x2, x3)
new_esEs9(x0, x1, app(ty_[], x2))
new_ltEs8(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_esEs30(x0, x1, app(ty_[], x2))
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_lt6(x0, x1, app(ty_Maybe, x2))
new_esEs22(Right(x0), Right(x1), x2, ty_Char)
new_esEs5(x0, x1, ty_@0)
new_esEs24(Just(x0), Just(x1), ty_Integer)
new_lt6(x0, x1, ty_Float)
new_lt21(x0, x1, ty_Int)
new_compare25(x0, x1, x2, x3, False, x4, x5)
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs34(x0, x1, ty_Bool)
new_esEs22(Right(x0), Right(x1), x2, ty_Ordering)
new_lt6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs8(Left(x0), Left(x1), ty_Double, x2)
new_lt20(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Ordering)
new_ltEs20(x0, x1, ty_@0)
new_esEs30(x0, x1, ty_@0)
new_esEs37(x0, x1, ty_Int)
new_ltEs19(x0, x1, ty_Char)
new_esEs32(x0, x1, ty_Int)
new_esEs22(Right(x0), Right(x1), x2, ty_Float)
new_primCompAux00(x0, GT)
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_esEs32(x0, x1, ty_Ordering)
new_esEs32(x0, x1, ty_Char)
new_esEs7(x0, x1, ty_@0)
new_primCmpNat0(Zero, Zero)
new_esEs22(Right(x0), Right(x1), x2, app(ty_[], x3))
new_esEs11(x0, x1, ty_Integer)
new_primMulNat0(Succ(x0), Succ(x1))
new_lt5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs24(Just(x0), Nothing, x1)
new_esEs31(x0, x1, ty_Bool)
new_esEs35(x0, x1, ty_Char)
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_lt9(x0, x1, x2, x3, x4)
new_esEs30(x0, x1, ty_Float)
new_ltEs13(LT, LT)
new_esEs36(x0, x1, ty_Double)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_lt22(x0, x1, ty_Float)
new_esEs26(EQ, EQ)
new_esEs33(x0, x1, ty_Integer)
new_esEs36(x0, x1, ty_Ordering)
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_lt15(x0, x1)
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_esEs10(x0, x1, ty_Float)
new_primPlusNat0(Zero, x0)
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_asAs(True, x0)
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_esEs24(Nothing, Nothing, x0)
new_esEs5(x0, x1, ty_Char)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_ltEs8(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_lt22(x0, x1, ty_@0)
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs6(x0, x1, ty_Char)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_Char)
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_esEs22(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs20([], [], x0)
new_esEs22(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_ltEs8(Left(x0), Left(x1), app(ty_[], x2), x3)
new_esEs30(x0, x1, ty_Int)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_esEs10(x0, x1, app(ty_[], x2))
new_ltEs6(x0, x1, app(app(ty_Either, x2), x3))
new_compare28(x0, x1, False, x2, x3)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_esEs27(x0, x1, ty_Char)
new_esEs30(x0, x1, ty_Integer)
new_esEs33(x0, x1, app(ty_[], x2))
new_ltEs13(GT, GT)
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_esEs24(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_lt5(x0, x1, app(ty_[], x2))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_lt20(x0, x1, ty_Integer)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_esEs4(x0, x1, ty_Double)
new_lt6(x0, x1, ty_Integer)
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs7(x0, x1, ty_Ordering)
new_esEs4(x0, x1, ty_Char)
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs28(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_Float)
new_esEs29(x0, x1, ty_Float)
new_lt13(x0, x1, x2, x3)
new_esEs36(x0, x1, ty_Integer)
new_esEs33(x0, x1, ty_Bool)
new_compare12(Just(x0), Nothing, x1)
new_not(True)
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs31(x0, x1, ty_Float)
new_lt23(x0, x1, ty_Float)
new_lt21(x0, x1, ty_@0)
new_ltEs8(Right(x0), Right(x1), x2, ty_Double)
new_compare13(x0, x1, True, x2)
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_lt21(x0, x1, ty_Float)
new_lt22(x0, x1, ty_Ordering)
new_primCmpInt(Neg(Zero), Pos(Zero))
new_primCmpInt(Pos(Zero), Neg(Zero))
new_not(False)
new_esEs33(x0, x1, ty_Float)
new_ltEs10(Just(x0), Nothing, x1)
new_primCmpNat0(Succ(x0), Succ(x1))
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt22(x0, x1, ty_Bool)
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_esEs24(Just(x0), Just(x1), app(ty_Maybe, x2))
new_compare17(x0, x1, x2, x3, False, x4, x5)
new_ltEs6(x0, x1, ty_Ordering)
new_lt20(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Ordering)
new_esEs10(x0, x1, ty_Ordering)
new_ltEs17(False, True)
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs17(True, False)
new_lt20(x0, x1, ty_Ordering)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_esEs26(EQ, LT)
new_esEs26(LT, EQ)
new_esEs22(Left(x0), Left(x1), ty_Integer, x2)
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_esEs12(EQ)
new_esEs24(Just(x0), Just(x1), app(ty_[], x2))
new_ltEs8(Right(x0), Right(x1), x2, ty_Float)
new_esEs34(x0, x1, ty_Ordering)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_lt23(x0, x1, ty_Int)
new_lt20(x0, x1, app(ty_[], x2))
new_esEs24(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs35(x0, x1, ty_@0)
new_compare6(GT, GT)
new_esEs22(Right(x0), Right(x1), x2, ty_Integer)
new_ltEs6(x0, x1, ty_Char)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_compare30(x0, x1, ty_Integer)
new_esEs5(x0, x1, ty_Int)
new_lt6(x0, x1, ty_Ordering)
new_esEs8(x0, x1, ty_Integer)
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs8(Right(x0), Right(x1), x2, ty_Char)
new_ltEs10(Nothing, Just(x0), x1)
new_esEs34(x0, x1, ty_Double)
new_esEs30(x0, x1, ty_Char)
new_ltEs20(x0, x1, ty_Char)
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_compare0(:(x0, x1), [], x2)
new_ltEs8(Left(x0), Left(x1), ty_Bool, x2)
new_esEs8(x0, x1, ty_Bool)
new_esEs10(x0, x1, ty_Double)
new_ltEs23(x0, x1, ty_Ordering)
new_ltEs11(@2(x0, x1), @2(x2, x3), x4, x5)
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_esEs24(Just(x0), Just(x1), app(ty_Ratio, x2))
new_ltEs8(Right(x0), Right(x1), x2, ty_Ordering)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs22(x0, x1, ty_Float)
new_esEs5(x0, x1, ty_Double)
new_esEs13(Float(x0, x1), Float(x2, x3))
new_esEs24(Just(x0), Just(x1), ty_Ordering)
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_ltEs19(x0, x1, ty_Bool)
new_esEs10(x0, x1, ty_Char)
new_ltEs6(x0, x1, app(app(ty_@2, x2), x3))
new_esEs11(x0, x1, ty_Char)
new_esEs38(x0, x1, app(ty_[], x2))
new_esEs34(x0, x1, ty_Integer)
new_esEs12(GT)
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Ordering)
new_compare18(:%(x0, x1), :%(x2, x3), ty_Integer)
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_primEqInt(Pos(Zero), Pos(Zero))
new_compare113(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_esEs32(x0, x1, app(ty_[], x2))
new_esEs5(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(ty_[], x2))
new_lt5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_esEs36(x0, x1, ty_Float)
new_esEs31(x0, x1, ty_Ordering)
new_compare6(GT, EQ)
new_compare6(EQ, GT)
new_lt18(x0, x1)
new_lt16(x0, x1)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_ltEs19(x0, x1, ty_Float)
new_lt5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs22(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs37(x0, x1, ty_@0)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_lt6(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, ty_@0)
new_primMulNat0(Zero, Succ(x0))
new_esEs5(x0, x1, app(ty_[], x2))
new_lt22(x0, x1, app(ty_Maybe, x2))
new_esEs20([], :(x0, x1), x2)
new_compare9(False, False)
new_esEs22(Right(x0), Right(x1), x2, ty_Int)
new_ltEs8(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_esEs11(x0, x1, ty_Float)
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_compare19(Left(x0), Right(x1), x2, x3)
new_compare19(Right(x0), Left(x1), x2, x3)
new_compare30(x0, x1, ty_Ordering)
new_compare110(x0, x1, True, x2, x3)
new_compare0([], :(x0, x1), x2)
new_ltEs8(Right(x0), Right(x1), x2, ty_@0)
new_ltEs6(x0, x1, app(ty_Maybe, x2))
new_ltEs24(x0, x1, ty_Integer)
new_primCmpNat0(Zero, Succ(x0))
new_compare27(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_ltEs22(x0, x1, app(ty_[], x2))
new_esEs9(x0, x1, ty_Double)
new_esEs38(x0, x1, ty_Int)

We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs:



↳ HASKELL
  ↳ LR
    ↳ HASKELL
      ↳ CR
        ↳ HASKELL
          ↳ IFR
            ↳ HASKELL
              ↳ BR
                ↳ HASKELL
                  ↳ COR
                    ↳ HASKELL
                      ↳ LetRed
                        ↳ HASKELL
                          ↳ NumRed
                            ↳ HASKELL
                              ↳ Narrow
                                ↳ AND
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
                                  ↳ QDP
QDP
                                    ↳ QDPSizeChangeProof

Q DP problem:
The TRS P consists of the following rules:

new_lookupWithDefaultFM01(vyw4, Branch(vyw30, vyw31, vyw32, vyw33, vyw34), vyw5, bd, be) → new_lookupWithDefaultFM0(vyw4, vyw30, vyw31, vyw32, vyw33, vyw34, vyw5, new_lt24(vyw5, vyw30, be), bd, be)
new_lookupWithDefaultFM0(vyw15, vyw16, vyw17, vyw18, vyw19, vyw20, vyw21, True, h, ba) → new_lookupWithDefaultFM01(vyw15, vyw19, vyw21, h, ba)
new_lookupWithDefaultFM0(vyw15, vyw16, vyw17, vyw18, vyw19, vyw20, vyw21, False, h, ba) → new_lookupWithDefaultFM00(vyw15, vyw16, vyw17, vyw18, vyw19, vyw20, vyw21, new_gt(vyw21, vyw16, ba), h, ba)
new_lookupWithDefaultFM00(vyw32, vyw33, vyw34, vyw35, vyw36, vyw37, vyw38, True, bb, bc) → new_lookupWithDefaultFM01(vyw32, vyw37, vyw38, bb, bc)

The TRS R consists of the following rules:

new_esEs6(vyw52, vyw302, ty_Float) → new_esEs13(vyw52, vyw302)
new_lt23(vyw106, vyw109, app(ty_Maybe, fhf)) → new_lt12(vyw106, vyw109, fhf)
new_esEs7(vyw51, vyw301, ty_Integer) → new_esEs21(vyw51, vyw301)
new_esEs27(vyw491, vyw501, ty_Char) → new_esEs19(vyw491, vyw501)
new_esEs4(vyw50, vyw300, ty_@0) → new_esEs16(vyw50, vyw300)
new_ltEs8(Left(vyw490), Left(vyw500), ty_Bool, bbg) → new_ltEs17(vyw490, vyw500)
new_ltEs21(vyw56, vyw57, app(ty_[], ebd)) → new_ltEs9(vyw56, vyw57, ebd)
new_compare110(vyw141, vyw142, True, cge, cgf) → LT
new_esEs24(Just(vyw500), Just(vyw3000), app(app(ty_@2, bfd), bfe)) → new_esEs23(vyw500, vyw3000, bfd, bfe)
new_esEs36(vyw500, vyw3000, ty_Bool) → new_esEs18(vyw500, vyw3000)
new_esEs4(vyw50, vyw300, app(ty_Maybe, bee)) → new_esEs24(vyw50, vyw300, bee)
new_esEs8(vyw50, vyw300, app(app(app(ty_@3, dfd), dfe), dff)) → new_esEs15(vyw50, vyw300, dfd, dfe, dff)
new_ltEs21(vyw56, vyw57, app(ty_Ratio, ebh)) → new_ltEs18(vyw56, vyw57, ebh)
new_esEs34(vyw490, vyw500, ty_Bool) → new_esEs18(vyw490, vyw500)
new_esEs38(vyw105, vyw108, ty_Char) → new_esEs19(vyw105, vyw108)
new_esEs29(vyw500, vyw3000, ty_Ordering) → new_esEs26(vyw500, vyw3000)
new_lt21(vyw490, vyw500, ty_@0) → new_lt16(vyw490, vyw500)
new_esEs4(vyw50, vyw300, app(app(ty_@2, ehc), ehd)) → new_esEs23(vyw50, vyw300, ehc, ehd)
new_esEs6(vyw52, vyw302, ty_Bool) → new_esEs18(vyw52, vyw302)
new_lt6(vyw490, vyw500, app(app(ty_Either, bae), baf)) → new_lt8(vyw490, vyw500, bae, baf)
new_compare6(EQ, EQ) → EQ
new_esEs5(vyw50, vyw300, ty_Float) → new_esEs13(vyw50, vyw300)
new_esEs24(Just(vyw500), Just(vyw3000), ty_Char) → new_esEs19(vyw500, vyw3000)
new_compare9(True, False) → GT
new_ltEs20(vyw49, vyw50, ty_@0) → new_ltEs15(vyw49, vyw50)
new_ltEs21(vyw56, vyw57, ty_Float) → new_ltEs4(vyw56, vyw57)
new_ltEs6(vyw492, vyw502, app(app(app(ty_@3, gc), gd), ge)) → new_ltEs5(vyw492, vyw502, gc, gd, ge)
new_esEs8(vyw50, vyw300, ty_Int) → new_esEs14(vyw50, vyw300)
new_esEs27(vyw491, vyw501, ty_Ordering) → new_esEs26(vyw491, vyw501)
new_ltEs19(vyw83, vyw84, app(app(ty_@2, cab), cac)) → new_ltEs11(vyw83, vyw84, cab, cac)
new_esEs27(vyw491, vyw501, app(ty_[], hh)) → new_esEs20(vyw491, vyw501, hh)
new_esEs30(vyw502, vyw3002, ty_Double) → new_esEs17(vyw502, vyw3002)
new_lt5(vyw491, vyw501, app(app(app(ty_@3, he), hf), hg)) → new_lt9(vyw491, vyw501, he, hf, hg)
new_esEs9(vyw50, vyw300, app(ty_Maybe, bgh)) → new_esEs24(vyw50, vyw300, bgh)
new_esEs11(vyw50, vyw300, ty_Integer) → new_esEs21(vyw50, vyw300)
new_esEs10(vyw51, vyw301, app(ty_Ratio, eb)) → new_esEs25(vyw51, vyw301, eb)
new_esEs40(vyw500, vyw3000, ty_Int) → new_esEs14(vyw500, vyw3000)
new_gt(vyw21, vyw16, ty_@0) → new_esEs41(new_compare5(vyw21, vyw16))
new_compare16(vyw185, vyw186, vyw187, vyw188, False, vyw190, cae, caf) → new_compare17(vyw185, vyw186, vyw187, vyw188, vyw190, cae, caf)
new_esEs36(vyw500, vyw3000, app(app(app(ty_@3, fag), fah), fba)) → new_esEs15(vyw500, vyw3000, fag, fah, fba)
new_esEs5(vyw50, vyw300, app(app(ty_@2, fde), fdf)) → new_esEs23(vyw50, vyw300, fde, fdf)
new_esEs33(vyw118, vyw120, ty_@0) → new_esEs16(vyw118, vyw120)
new_lt23(vyw106, vyw109, ty_Double) → new_lt14(vyw106, vyw109)
new_esEs30(vyw502, vyw3002, app(app(ty_@2, chh), daa)) → new_esEs23(vyw502, vyw3002, chh, daa)
new_ltEs20(vyw49, vyw50, app(ty_[], dgh)) → new_ltEs9(vyw49, vyw50, dgh)
new_ltEs13(LT, EQ) → True
new_esEs37(vyw106, vyw109, app(app(ty_@2, fhg), fhh)) → new_esEs23(vyw106, vyw109, fhg, fhh)
new_ltEs22(vyw119, vyw121, app(app(app(ty_@3, ece), ecf), ecg)) → new_ltEs5(vyw119, vyw121, ece, ecf, ecg)
new_compare0(:(vyw50, vyw51), :(vyw300, vyw301), cc) → new_primCompAux0(vyw50, vyw300, new_compare0(vyw51, vyw301, cc), cc)
new_ltEs8(Left(vyw490), Left(vyw500), ty_Char, bbg) → new_ltEs16(vyw490, vyw500)
new_compare15(vyw5, vyw30) → new_primCmpInt(vyw5, vyw30)
new_gt(vyw21, vyw16, app(ty_[], gag)) → new_esEs41(new_compare0(vyw21, vyw16, gag))
new_esEs38(vyw105, vyw108, app(app(ty_@2, ffc), ffd)) → new_esEs23(vyw105, vyw108, ffc, ffd)
new_lt17(vyw5, vyw30) → new_esEs12(new_compare11(vyw5, vyw30))
new_esEs28(vyw490, vyw500, app(ty_Ratio, bbf)) → new_esEs25(vyw490, vyw500, bbf)
new_esEs10(vyw51, vyw301, ty_Integer) → new_esEs21(vyw51, vyw301)
new_esEs11(vyw50, vyw300, ty_Bool) → new_esEs18(vyw50, vyw300)
new_ltEs5(@3(vyw490, vyw491, vyw492), @3(vyw500, vyw501, vyw502), ff, fg, fh) → new_pePe(new_lt6(vyw490, vyw500, ff), new_asAs(new_esEs28(vyw490, vyw500, ff), new_pePe(new_lt5(vyw491, vyw501, fg), new_asAs(new_esEs27(vyw491, vyw501, fg), new_ltEs6(vyw492, vyw502, fh)))))
new_esEs38(vyw105, vyw108, app(ty_[], ffa)) → new_esEs20(vyw105, vyw108, ffa)
new_esEs22(Right(vyw500), Right(vyw3000), cdf, ty_Int) → new_esEs14(vyw500, vyw3000)
new_lt24(vyw5, vyw30, ty_Float) → new_lt11(vyw5, vyw30)
new_lt5(vyw491, vyw501, ty_@0) → new_lt16(vyw491, vyw501)
new_compare30(vyw50, vyw300, app(ty_Maybe, eaa)) → new_compare12(vyw50, vyw300, eaa)
new_esEs22(Left(vyw500), Left(vyw3000), app(app(ty_@2, cdb), cdc), ccc) → new_esEs23(vyw500, vyw3000, cdb, cdc)
new_gt(vyw21, vyw16, ty_Ordering) → new_esEs41(new_compare6(vyw21, vyw16))
new_esEs27(vyw491, vyw501, app(app(ty_Either, hc), hd)) → new_esEs22(vyw491, vyw501, hc, hd)
new_lt4(vyw5, vyw30) → new_esEs12(new_compare6(vyw5, vyw30))
new_esEs32(vyw500, vyw3000, ty_Ordering) → new_esEs26(vyw500, vyw3000)
new_pePe(False, vyw197) → vyw197
new_lt5(vyw491, vyw501, ty_Char) → new_lt17(vyw491, vyw501)
new_esEs27(vyw491, vyw501, ty_@0) → new_esEs16(vyw491, vyw501)
new_ltEs8(Left(vyw490), Left(vyw500), app(ty_[], bce), bbg) → new_ltEs9(vyw490, vyw500, bce)
new_compare25(vyw118, vyw119, vyw120, vyw121, True, eca, ecb) → EQ
new_esEs10(vyw51, vyw301, ty_Ordering) → new_esEs26(vyw51, vyw301)
new_ltEs23(vyw491, vyw501, ty_Bool) → new_ltEs17(vyw491, vyw501)
new_ltEs23(vyw491, vyw501, app(ty_Maybe, efe)) → new_ltEs10(vyw491, vyw501, efe)
new_esEs36(vyw500, vyw3000, app(ty_Ratio, fbh)) → new_esEs25(vyw500, vyw3000, fbh)
new_esEs24(Just(vyw500), Just(vyw3000), ty_Integer) → new_esEs21(vyw500, vyw3000)
new_esEs24(Just(vyw500), Just(vyw3000), ty_@0) → new_esEs16(vyw500, vyw3000)
new_lt5(vyw491, vyw501, app(app(ty_@2, bab), bac)) → new_lt13(vyw491, vyw501, bab, bac)
new_esEs22(Left(vyw500), Left(vyw3000), app(ty_Ratio, cde), ccc) → new_esEs25(vyw500, vyw3000, cde)
new_compare7(@2(vyw50, vyw51), @2(vyw300, vyw301), ce, cf) → new_compare25(vyw50, vyw51, vyw300, vyw301, new_asAs(new_esEs11(vyw50, vyw300, ce), new_esEs10(vyw51, vyw301, cf)), ce, cf)
new_esEs31(vyw501, vyw3001, ty_Char) → new_esEs19(vyw501, vyw3001)
new_esEs31(vyw501, vyw3001, app(app(ty_Either, dah), dba)) → new_esEs22(vyw501, vyw3001, dah, dba)
new_ltEs23(vyw491, vyw501, ty_Double) → new_ltEs12(vyw491, vyw501)
new_esEs37(vyw106, vyw109, ty_@0) → new_esEs16(vyw106, vyw109)
new_esEs4(vyw50, vyw300, ty_Char) → new_esEs19(vyw50, vyw300)
new_ltEs8(Right(vyw490), Right(vyw500), bdb, ty_Char) → new_ltEs16(vyw490, vyw500)
new_esEs9(vyw50, vyw300, ty_Double) → new_esEs17(vyw50, vyw300)
new_esEs20([], [], cfb) → True
new_esEs12(GT) → False
new_esEs35(vyw501, vyw3001, app(app(ty_Either, faa), fab)) → new_esEs22(vyw501, vyw3001, faa, fab)
new_gt(vyw21, vyw16, ty_Int) → new_esEs41(new_compare15(vyw21, vyw16))
new_compare17(vyw185, vyw186, vyw187, vyw188, True, cae, caf) → LT
new_esEs22(Right(vyw500), Right(vyw3000), cdf, ty_Double) → new_esEs17(vyw500, vyw3000)
new_esEs39(vyw501, vyw3001, ty_Int) → new_esEs14(vyw501, vyw3001)
new_esEs4(vyw50, vyw300, ty_Float) → new_esEs13(vyw50, vyw300)
new_esEs38(vyw105, vyw108, app(app(app(ty_@3, fef), feg), feh)) → new_esEs15(vyw105, vyw108, fef, feg, feh)
new_ltEs4(vyw49, vyw50) → new_fsEs(new_compare8(vyw49, vyw50))
new_ltEs23(vyw491, vyw501, ty_Float) → new_ltEs4(vyw491, vyw501)
new_esEs33(vyw118, vyw120, ty_Int) → new_esEs14(vyw118, vyw120)
new_lt5(vyw491, vyw501, ty_Ordering) → new_lt4(vyw491, vyw501)
new_esEs36(vyw500, vyw3000, ty_Double) → new_esEs17(vyw500, vyw3000)
new_esEs32(vyw500, vyw3000, app(ty_[], dca)) → new_esEs20(vyw500, vyw3000, dca)
new_esEs37(vyw106, vyw109, app(ty_Maybe, fhf)) → new_esEs24(vyw106, vyw109, fhf)
new_ltEs22(vyw119, vyw121, ty_Bool) → new_ltEs17(vyw119, vyw121)
new_esEs8(vyw50, vyw300, app(app(ty_Either, dfh), dga)) → new_esEs22(vyw50, vyw300, dfh, dga)
new_esEs22(Left(vyw500), Left(vyw3000), ty_Int, ccc) → new_esEs14(vyw500, vyw3000)
new_compare19(Right(vyw50), Left(vyw300), bf, bg) → GT
new_esEs34(vyw490, vyw500, ty_Integer) → new_esEs21(vyw490, vyw500)
new_esEs24(Just(vyw500), Just(vyw3000), ty_Float) → new_esEs13(vyw500, vyw3000)
new_compare0([], [], cc) → EQ
new_pePe(True, vyw197) → True
new_primEqNat0(Zero, Zero) → True
new_esEs30(vyw502, vyw3002, ty_@0) → new_esEs16(vyw502, vyw3002)
new_ltEs20(vyw49, vyw50, app(ty_Ratio, cag)) → new_ltEs18(vyw49, vyw50, cag)
new_lt5(vyw491, vyw501, ty_Bool) → new_lt18(vyw491, vyw501)
new_esEs37(vyw106, vyw109, ty_Bool) → new_esEs18(vyw106, vyw109)
new_esEs29(vyw500, vyw3000, ty_Int) → new_esEs14(vyw500, vyw3000)
new_esEs28(vyw490, vyw500, ty_@0) → new_esEs16(vyw490, vyw500)
new_esEs12(EQ) → False
new_lt20(vyw118, vyw120, ty_Integer) → new_lt7(vyw118, vyw120)
new_ltEs21(vyw56, vyw57, app(app(ty_Either, eag), eah)) → new_ltEs8(vyw56, vyw57, eag, eah)
new_compare6(EQ, LT) → GT
new_compare110(vyw141, vyw142, False, cge, cgf) → GT
new_lt23(vyw106, vyw109, ty_@0) → new_lt16(vyw106, vyw109)
new_esEs35(vyw501, vyw3001, ty_Float) → new_esEs13(vyw501, vyw3001)
new_esEs26(LT, LT) → True
new_compare18(:%(vyw50, vyw51), :%(vyw300, vyw301), ty_Int) → new_compare15(new_sr(vyw50, vyw301), new_sr(vyw300, vyw51))
new_esEs29(vyw500, vyw3000, app(app(app(ty_@3, cfc), cfd), cfe)) → new_esEs15(vyw500, vyw3000, cfc, cfd, cfe)
new_esEs30(vyw502, vyw3002, ty_Char) → new_esEs19(vyw502, vyw3002)
new_esEs36(vyw500, vyw3000, ty_Char) → new_esEs19(vyw500, vyw3000)
new_esEs26(GT, LT) → False
new_esEs26(LT, GT) → False
new_ltEs21(vyw56, vyw57, app(app(ty_@2, ebf), ebg)) → new_ltEs11(vyw56, vyw57, ebf, ebg)
new_esEs10(vyw51, vyw301, ty_Int) → new_esEs14(vyw51, vyw301)
new_primPlusNat0(Succ(vyw1980), vyw30100) → Succ(Succ(new_primPlusNat1(vyw1980, vyw30100)))
new_compare12(Nothing, Just(vyw300), cd) → LT
new_ltEs24(vyw107, vyw110, app(app(ty_@2, fge), fgf)) → new_ltEs11(vyw107, vyw110, fge, fgf)
new_esEs10(vyw51, vyw301, ty_@0) → new_esEs16(vyw51, vyw301)
new_gt(vyw21, vyw16, ty_Double) → new_esEs41(new_compare14(vyw21, vyw16))
new_lt20(vyw118, vyw120, ty_Char) → new_lt17(vyw118, vyw120)
new_lt21(vyw490, vyw500, app(app(ty_@2, egh), eha)) → new_lt13(vyw490, vyw500, egh, eha)
new_compare30(vyw50, vyw300, ty_Double) → new_compare14(vyw50, vyw300)
new_ltEs20(vyw49, vyw50, ty_Int) → new_ltEs14(vyw49, vyw50)
new_ltEs22(vyw119, vyw121, app(ty_Ratio, edd)) → new_ltEs18(vyw119, vyw121, edd)
new_primEqInt(Neg(Succ(vyw5000)), Neg(Succ(vyw30000))) → new_primEqNat0(vyw5000, vyw30000)
new_primPlusNat1(Zero, Succ(vyw301000)) → Succ(vyw301000)
new_primPlusNat1(Succ(vyw19800), Zero) → Succ(vyw19800)
new_esEs7(vyw51, vyw301, ty_Char) → new_esEs19(vyw51, vyw301)
new_ltEs8(Left(vyw490), Left(vyw500), app(ty_Ratio, bda), bbg) → new_ltEs18(vyw490, vyw500, bda)
new_ltEs13(LT, GT) → True
new_lt23(vyw106, vyw109, ty_Char) → new_lt17(vyw106, vyw109)
new_ltEs8(Left(vyw490), Left(vyw500), ty_Ordering, bbg) → new_ltEs13(vyw490, vyw500)
new_esEs22(Right(vyw500), Right(vyw3000), cdf, app(app(ty_@2, cee), cef)) → new_esEs23(vyw500, vyw3000, cee, cef)
new_primEqInt(Neg(Zero), Neg(Zero)) → True
new_lt22(vyw105, vyw108, app(ty_Maybe, ffb)) → new_lt12(vyw105, vyw108, ffb)
new_lt6(vyw490, vyw500, ty_Ordering) → new_lt4(vyw490, vyw500)
new_esEs33(vyw118, vyw120, app(app(ty_@2, eed), eee)) → new_esEs23(vyw118, vyw120, eed, eee)
new_ltEs10(Just(vyw490), Just(vyw500), app(app(ty_@2, cbh), cca)) → new_ltEs11(vyw490, vyw500, cbh, cca)
new_esEs23(@2(vyw500, vyw501), @2(vyw3000, vyw3001), ehc, ehd) → new_asAs(new_esEs36(vyw500, vyw3000, ehc), new_esEs35(vyw501, vyw3001, ehd))
new_esEs40(vyw500, vyw3000, ty_Integer) → new_esEs21(vyw500, vyw3000)
new_esEs31(vyw501, vyw3001, ty_@0) → new_esEs16(vyw501, vyw3001)
new_esEs34(vyw490, vyw500, ty_Ordering) → new_esEs26(vyw490, vyw500)
new_esEs38(vyw105, vyw108, app(ty_Maybe, ffb)) → new_esEs24(vyw105, vyw108, ffb)
new_esEs36(vyw500, vyw3000, ty_Ordering) → new_esEs26(vyw500, vyw3000)
new_esEs6(vyw52, vyw302, app(app(ty_@2, ddf), ddg)) → new_esEs23(vyw52, vyw302, ddf, ddg)
new_compare9(False, False) → EQ
new_ltEs19(vyw83, vyw84, ty_Int) → new_ltEs14(vyw83, vyw84)
new_esEs33(vyw118, vyw120, app(app(ty_Either, ede), edf)) → new_esEs22(vyw118, vyw120, ede, edf)
new_ltEs21(vyw56, vyw57, ty_Int) → new_ltEs14(vyw56, vyw57)
new_primCmpInt(Neg(Zero), Pos(Zero)) → EQ
new_primCmpInt(Pos(Zero), Neg(Zero)) → EQ
new_esEs22(Right(vyw500), Right(vyw3000), cdf, ty_Bool) → new_esEs18(vyw500, vyw3000)
new_esEs35(vyw501, vyw3001, ty_Int) → new_esEs14(vyw501, vyw3001)
new_esEs4(vyw50, vyw300, ty_Ordering) → new_esEs26(vyw50, vyw300)
new_esEs38(vyw105, vyw108, app(app(ty_Either, fed), fee)) → new_esEs22(vyw105, vyw108, fed, fee)
new_esEs25(:%(vyw500, vyw501), :%(vyw3000, vyw3001), fcf) → new_asAs(new_esEs40(vyw500, vyw3000, fcf), new_esEs39(vyw501, vyw3001, fcf))
new_primEqInt(Pos(Succ(vyw5000)), Pos(Succ(vyw30000))) → new_primEqNat0(vyw5000, vyw30000)
new_esEs4(vyw50, vyw300, ty_Int) → new_esEs14(vyw50, vyw300)
new_esEs24(Just(vyw500), Nothing, bee) → False
new_esEs24(Nothing, Just(vyw3000), bee) → False
new_lt13(vyw5, vyw30, ce, cf) → new_esEs12(new_compare7(vyw5, vyw30, ce, cf))
new_esEs6(vyw52, vyw302, ty_Ordering) → new_esEs26(vyw52, vyw302)
new_primEqNat0(Succ(vyw5000), Succ(vyw30000)) → new_primEqNat0(vyw5000, vyw30000)
new_compare19(Right(vyw50), Right(vyw300), bf, bg) → new_compare210(vyw50, vyw300, new_esEs5(vyw50, vyw300, bg), bf, bg)
new_esEs26(EQ, EQ) → True
new_esEs6(vyw52, vyw302, app(ty_[], ddc)) → new_esEs20(vyw52, vyw302, ddc)
new_lt21(vyw490, vyw500, ty_Int) → new_lt15(vyw490, vyw500)
new_esEs24(Just(vyw500), Just(vyw3000), app(ty_Ratio, bfg)) → new_esEs25(vyw500, vyw3000, bfg)
new_ltEs20(vyw49, vyw50, ty_Char) → new_ltEs16(vyw49, vyw50)
new_lt5(vyw491, vyw501, ty_Float) → new_lt11(vyw491, vyw501)
new_primCmpInt(Neg(Succ(vyw500)), Neg(vyw300)) → new_primCmpNat0(vyw300, Succ(vyw500))
new_compare6(LT, LT) → EQ
new_compare13(vyw155, vyw156, True, cfa) → LT
new_ltEs24(vyw107, vyw110, ty_@0) → new_ltEs15(vyw107, vyw110)
new_ltEs8(Right(vyw490), Right(vyw500), bdb, ty_Integer) → new_ltEs7(vyw490, vyw500)
new_esEs29(vyw500, vyw3000, app(ty_Ratio, cgd)) → new_esEs25(vyw500, vyw3000, cgd)
new_lt24(vyw5, vyw30, ty_@0) → new_lt16(vyw5, vyw30)
new_esEs24(Just(vyw500), Just(vyw3000), ty_Int) → new_esEs14(vyw500, vyw3000)
new_lt21(vyw490, vyw500, app(ty_[], egf)) → new_lt10(vyw490, vyw500, egf)
new_ltEs6(vyw492, vyw502, ty_Ordering) → new_ltEs13(vyw492, vyw502)
new_esEs15(@3(vyw500, vyw501, vyw502), @3(vyw3000, vyw3001, vyw3002), cgg, cgh, cha) → new_asAs(new_esEs32(vyw500, vyw3000, cgg), new_asAs(new_esEs31(vyw501, vyw3001, cgh), new_esEs30(vyw502, vyw3002, cha)))
new_ltEs21(vyw56, vyw57, app(ty_Maybe, ebe)) → new_ltEs10(vyw56, vyw57, ebe)
new_esEs34(vyw490, vyw500, ty_@0) → new_esEs16(vyw490, vyw500)
new_esEs32(vyw500, vyw3000, app(app(ty_@2, dcd), dce)) → new_esEs23(vyw500, vyw3000, dcd, dce)
new_esEs30(vyw502, vyw3002, ty_Bool) → new_esEs18(vyw502, vyw3002)
new_esEs33(vyw118, vyw120, ty_Ordering) → new_esEs26(vyw118, vyw120)
new_primPlusNat1(Succ(vyw19800), Succ(vyw301000)) → Succ(Succ(new_primPlusNat1(vyw19800, vyw301000)))
new_esEs28(vyw490, vyw500, ty_Ordering) → new_esEs26(vyw490, vyw500)
new_esEs5(vyw50, vyw300, ty_Int) → new_esEs14(vyw50, vyw300)
new_gt(vyw21, vyw16, app(ty_Maybe, gah)) → new_esEs41(new_compare12(vyw21, vyw16, gah))
new_esEs7(vyw51, vyw301, app(app(ty_Either, def), deg)) → new_esEs22(vyw51, vyw301, def, deg)
new_esEs13(Float(vyw500, vyw501), Float(vyw3000, vyw3001)) → new_esEs14(new_sr(vyw500, vyw3000), new_sr(vyw501, vyw3001))
new_esEs29(vyw500, vyw3000, ty_Char) → new_esEs19(vyw500, vyw3000)
new_esEs32(vyw500, vyw3000, ty_@0) → new_esEs16(vyw500, vyw3000)
new_ltEs19(vyw83, vyw84, ty_@0) → new_ltEs15(vyw83, vyw84)
new_ltEs23(vyw491, vyw501, app(app(ty_@2, eff), efg)) → new_ltEs11(vyw491, vyw501, eff, efg)
new_lt23(vyw106, vyw109, ty_Bool) → new_lt18(vyw106, vyw109)
new_compare14(Double(vyw50, vyw51), Double(vyw300, vyw301)) → new_compare15(new_sr(vyw50, vyw300), new_sr(vyw51, vyw301))
new_primEqInt(Pos(Zero), Neg(Succ(vyw30000))) → False
new_primEqInt(Neg(Zero), Pos(Succ(vyw30000))) → False
new_primCompAux00(vyw77, EQ) → vyw77
new_primCmpInt(Pos(Zero), Pos(Succ(vyw3000))) → new_primCmpNat0(Zero, Succ(vyw3000))
new_ltEs20(vyw49, vyw50, app(app(ty_@2, dha), dhb)) → new_ltEs11(vyw49, vyw50, dha, dhb)
new_esEs30(vyw502, vyw3002, ty_Integer) → new_esEs21(vyw502, vyw3002)
new_lt20(vyw118, vyw120, ty_Ordering) → new_lt4(vyw118, vyw120)
new_esEs37(vyw106, vyw109, app(app(app(ty_@3, fhb), fhc), fhd)) → new_esEs15(vyw106, vyw109, fhb, fhc, fhd)
new_esEs28(vyw490, vyw500, app(app(app(ty_@3, bag), bah), bba)) → new_esEs15(vyw490, vyw500, bag, bah, bba)
new_esEs5(vyw50, vyw300, app(ty_Maybe, fdg)) → new_esEs24(vyw50, vyw300, fdg)
new_ltEs13(GT, EQ) → False
new_ltEs8(Right(vyw490), Right(vyw500), bdb, ty_Float) → new_ltEs4(vyw490, vyw500)
new_ltEs13(EQ, LT) → False
new_esEs6(vyw52, vyw302, ty_Int) → new_esEs14(vyw52, vyw302)
new_lt24(vyw5, vyw30, ty_Integer) → new_lt7(vyw5, vyw30)
new_ltEs6(vyw492, vyw502, app(ty_Ratio, hb)) → new_ltEs18(vyw492, vyw502, hb)
new_lt20(vyw118, vyw120, ty_@0) → new_lt16(vyw118, vyw120)
new_compare30(vyw50, vyw300, app(ty_Ratio, ead)) → new_compare18(vyw50, vyw300, ead)
new_ltEs10(Just(vyw490), Just(vyw500), app(app(app(ty_@3, cbc), cbd), cbe)) → new_ltEs5(vyw490, vyw500, cbc, cbd, cbe)
new_not(False) → True
new_ltEs20(vyw49, vyw50, ty_Ordering) → new_ltEs13(vyw49, vyw50)
new_ltEs23(vyw491, vyw501, app(ty_[], efd)) → new_ltEs9(vyw491, vyw501, efd)
new_ltEs24(vyw107, vyw110, app(app(ty_Either, fff), ffg)) → new_ltEs8(vyw107, vyw110, fff, ffg)
new_lt20(vyw118, vyw120, app(ty_[], eeb)) → new_lt10(vyw118, vyw120, eeb)
new_esEs33(vyw118, vyw120, ty_Char) → new_esEs19(vyw118, vyw120)
new_esEs24(Just(vyw500), Just(vyw3000), ty_Double) → new_esEs17(vyw500, vyw3000)
new_esEs22(Left(vyw500), Left(vyw3000), app(app(ty_Either, cch), cda), ccc) → new_esEs22(vyw500, vyw3000, cch, cda)
new_compare0(:(vyw50, vyw51), [], cc) → GT
new_ltEs24(vyw107, vyw110, ty_Float) → new_ltEs4(vyw107, vyw110)
new_esEs11(vyw50, vyw300, app(ty_Ratio, fd)) → new_esEs25(vyw50, vyw300, fd)
new_esEs30(vyw502, vyw3002, app(ty_[], che)) → new_esEs20(vyw502, vyw3002, che)
new_compare30(vyw50, vyw300, ty_Integer) → new_compare29(vyw50, vyw300)
new_lt6(vyw490, vyw500, app(ty_[], bbb)) → new_lt10(vyw490, vyw500, bbb)
new_esEs22(Left(vyw500), Left(vyw3000), ty_Char, ccc) → new_esEs19(vyw500, vyw3000)
new_ltEs20(vyw49, vyw50, ty_Bool) → new_ltEs17(vyw49, vyw50)
new_primMulInt(Neg(vyw510), Neg(vyw3010)) → Pos(new_primMulNat0(vyw510, vyw3010))
new_esEs10(vyw51, vyw301, ty_Float) → new_esEs13(vyw51, vyw301)
new_esEs5(vyw50, vyw300, ty_Ordering) → new_esEs26(vyw50, vyw300)
new_ltEs8(Left(vyw490), Left(vyw500), app(app(ty_Either, bbh), bca), bbg) → new_ltEs8(vyw490, vyw500, bbh, bca)
new_primEqNat0(Zero, Succ(vyw30000)) → False
new_primEqNat0(Succ(vyw5000), Zero) → False
new_ltEs22(vyw119, vyw121, ty_@0) → new_ltEs15(vyw119, vyw121)
new_esEs10(vyw51, vyw301, ty_Double) → new_esEs17(vyw51, vyw301)
new_esEs22(Left(vyw500), Left(vyw3000), app(app(app(ty_@3, ccd), cce), ccf), ccc) → new_esEs15(vyw500, vyw3000, ccd, cce, ccf)
new_esEs11(vyw50, vyw300, ty_Char) → new_esEs19(vyw50, vyw300)
new_esEs35(vyw501, vyw3001, ty_Ordering) → new_esEs26(vyw501, vyw3001)
new_lt20(vyw118, vyw120, app(app(ty_Either, ede), edf)) → new_lt8(vyw118, vyw120, ede, edf)
new_ltEs10(Just(vyw490), Just(vyw500), ty_Char) → new_ltEs16(vyw490, vyw500)
new_esEs11(vyw50, vyw300, app(ty_Maybe, fc)) → new_esEs24(vyw50, vyw300, fc)
new_esEs21(Integer(vyw500), Integer(vyw3000)) → new_primEqInt(vyw500, vyw3000)
new_esEs6(vyw52, vyw302, ty_Integer) → new_esEs21(vyw52, vyw302)
new_lt21(vyw490, vyw500, ty_Float) → new_lt11(vyw490, vyw500)
new_esEs38(vyw105, vyw108, app(ty_Ratio, ffe)) → new_esEs25(vyw105, vyw108, ffe)
new_esEs35(vyw501, vyw3001, ty_@0) → new_esEs16(vyw501, vyw3001)
new_esEs5(vyw50, vyw300, ty_Bool) → new_esEs18(vyw50, vyw300)
new_lt20(vyw118, vyw120, ty_Bool) → new_lt18(vyw118, vyw120)
new_esEs32(vyw500, vyw3000, ty_Bool) → new_esEs18(vyw500, vyw3000)
new_esEs37(vyw106, vyw109, app(ty_[], fhe)) → new_esEs20(vyw106, vyw109, fhe)
new_ltEs10(Just(vyw490), Just(vyw500), app(ty_Ratio, ccb)) → new_ltEs18(vyw490, vyw500, ccb)
new_esEs38(vyw105, vyw108, ty_Int) → new_esEs14(vyw105, vyw108)
new_ltEs22(vyw119, vyw121, app(app(ty_@2, edb), edc)) → new_ltEs11(vyw119, vyw121, edb, edc)
new_esEs22(Left(vyw500), Left(vyw3000), ty_Integer, ccc) → new_esEs21(vyw500, vyw3000)
new_ltEs22(vyw119, vyw121, ty_Float) → new_ltEs4(vyw119, vyw121)
new_primCmpInt(Pos(Zero), Neg(Succ(vyw3000))) → GT
new_ltEs22(vyw119, vyw121, ty_Char) → new_ltEs16(vyw119, vyw121)
new_esEs6(vyw52, vyw302, app(ty_Ratio, dea)) → new_esEs25(vyw52, vyw302, dea)
new_esEs32(vyw500, vyw3000, ty_Float) → new_esEs13(vyw500, vyw3000)
new_esEs4(vyw50, vyw300, app(app(ty_Either, cdf), ccc)) → new_esEs22(vyw50, vyw300, cdf, ccc)
new_ltEs10(Just(vyw490), Nothing, cah) → False
new_ltEs19(vyw83, vyw84, ty_Bool) → new_ltEs17(vyw83, vyw84)
new_lt22(vyw105, vyw108, app(ty_Ratio, ffe)) → new_lt19(vyw105, vyw108, ffe)
new_esEs7(vyw51, vyw301, ty_Ordering) → new_esEs26(vyw51, vyw301)
new_esEs36(vyw500, vyw3000, app(ty_[], fbb)) → new_esEs20(vyw500, vyw3000, fbb)
new_ltEs24(vyw107, vyw110, app(ty_Ratio, fgg)) → new_ltEs18(vyw107, vyw110, fgg)
new_esEs5(vyw50, vyw300, ty_@0) → new_esEs16(vyw50, vyw300)
new_lt20(vyw118, vyw120, app(ty_Ratio, eef)) → new_lt19(vyw118, vyw120, eef)
new_compare30(vyw50, vyw300, ty_Float) → new_compare8(vyw50, vyw300)
new_compare12(Just(vyw50), Just(vyw300), cd) → new_compare26(vyw50, vyw300, new_esEs9(vyw50, vyw300, cd), cd)
new_lt23(vyw106, vyw109, ty_Ordering) → new_lt4(vyw106, vyw109)
new_lt24(vyw5, vyw30, app(ty_Ratio, cg)) → new_lt19(vyw5, vyw30, cg)
new_esEs19(Char(vyw500), Char(vyw3000)) → new_primEqNat0(vyw500, vyw3000)
new_esEs32(vyw500, vyw3000, ty_Integer) → new_esEs21(vyw500, vyw3000)
new_ltEs8(Right(vyw490), Right(vyw500), bdb, ty_Bool) → new_ltEs17(vyw490, vyw500)
new_primCompAux0(vyw50, vyw300, vyw44, cc) → new_primCompAux00(vyw44, new_compare30(vyw50, vyw300, cc))
new_primCmpInt(Neg(Zero), Neg(Zero)) → EQ
new_compare30(vyw50, vyw300, app(ty_[], dhh)) → new_compare0(vyw50, vyw300, dhh)
new_ltEs13(GT, GT) → True
new_compare6(LT, GT) → LT
new_esEs7(vyw51, vyw301, ty_Bool) → new_esEs18(vyw51, vyw301)
new_asAs(False, vyw150) → False
new_ltEs24(vyw107, vyw110, ty_Int) → new_ltEs14(vyw107, vyw110)
new_esEs6(vyw52, vyw302, app(app(ty_Either, ddd), dde)) → new_esEs22(vyw52, vyw302, ddd, dde)
new_esEs5(vyw50, vyw300, ty_Integer) → new_esEs21(vyw50, vyw300)
new_primMulInt(Neg(vyw510), Pos(vyw3010)) → Neg(new_primMulNat0(vyw510, vyw3010))
new_primMulInt(Pos(vyw510), Neg(vyw3010)) → Neg(new_primMulNat0(vyw510, vyw3010))
new_lt15(vyw5, vyw30) → new_esEs12(new_compare15(vyw5, vyw30))
new_ltEs20(vyw49, vyw50, ty_Integer) → new_ltEs7(vyw49, vyw50)
new_ltEs6(vyw492, vyw502, ty_@0) → new_ltEs15(vyw492, vyw502)
new_lt21(vyw490, vyw500, app(app(ty_Either, ega), egb)) → new_lt8(vyw490, vyw500, ega, egb)
new_ltEs19(vyw83, vyw84, ty_Double) → new_ltEs12(vyw83, vyw84)
new_lt6(vyw490, vyw500, ty_Double) → new_lt14(vyw490, vyw500)
new_lt22(vyw105, vyw108, ty_Char) → new_lt17(vyw105, vyw108)
new_ltEs24(vyw107, vyw110, app(ty_[], fgc)) → new_ltEs9(vyw107, vyw110, fgc)
new_esEs37(vyw106, vyw109, ty_Ordering) → new_esEs26(vyw106, vyw109)
new_esEs28(vyw490, vyw500, ty_Bool) → new_esEs18(vyw490, vyw500)
new_lt14(vyw5, vyw30) → new_esEs12(new_compare14(vyw5, vyw30))
new_esEs28(vyw490, vyw500, ty_Float) → new_esEs13(vyw490, vyw500)
new_lt5(vyw491, vyw501, app(ty_[], hh)) → new_lt10(vyw491, vyw501, hh)
new_esEs16(@0, @0) → True
new_lt6(vyw490, vyw500, app(ty_Maybe, bbc)) → new_lt12(vyw490, vyw500, bbc)
new_esEs22(Left(vyw500), Left(vyw3000), app(ty_Maybe, cdd), ccc) → new_esEs24(vyw500, vyw3000, cdd)
new_esEs28(vyw490, vyw500, app(app(ty_@2, bbd), bbe)) → new_esEs23(vyw490, vyw500, bbd, bbe)
new_esEs8(vyw50, vyw300, app(ty_[], dfg)) → new_esEs20(vyw50, vyw300, dfg)
new_esEs22(Right(vyw500), Right(vyw3000), cdf, app(ty_Maybe, ceg)) → new_esEs24(vyw500, vyw3000, ceg)
new_esEs10(vyw51, vyw301, ty_Bool) → new_esEs18(vyw51, vyw301)
new_compare16(vyw185, vyw186, vyw187, vyw188, True, vyw190, cae, caf) → new_compare17(vyw185, vyw186, vyw187, vyw188, True, cae, caf)
new_ltEs21(vyw56, vyw57, ty_Char) → new_ltEs16(vyw56, vyw57)
new_lt24(vyw5, vyw30, ty_Ordering) → new_lt4(vyw5, vyw30)
new_esEs4(vyw50, vyw300, ty_Double) → new_esEs17(vyw50, vyw300)
new_lt6(vyw490, vyw500, app(app(ty_@2, bbd), bbe)) → new_lt13(vyw490, vyw500, bbd, bbe)
new_esEs30(vyw502, vyw3002, app(app(ty_Either, chf), chg)) → new_esEs22(vyw502, vyw3002, chf, chg)
new_esEs10(vyw51, vyw301, app(app(ty_@2, dg), dh)) → new_esEs23(vyw51, vyw301, dg, dh)
new_esEs41(GT) → True
new_lt22(vyw105, vyw108, ty_Float) → new_lt11(vyw105, vyw108)
new_ltEs8(Right(vyw490), Right(vyw500), bdb, ty_Double) → new_ltEs12(vyw490, vyw500)
new_ltEs19(vyw83, vyw84, app(ty_Maybe, caa)) → new_ltEs10(vyw83, vyw84, caa)
new_lt20(vyw118, vyw120, ty_Float) → new_lt11(vyw118, vyw120)
new_ltEs17(False, True) → True
new_ltEs21(vyw56, vyw57, ty_Bool) → new_ltEs17(vyw56, vyw57)
new_compare9(True, True) → EQ
new_esEs6(vyw52, vyw302, ty_Char) → new_esEs19(vyw52, vyw302)
new_esEs18(False, True) → False
new_esEs18(True, False) → False
new_lt19(vyw5, vyw30, cg) → new_esEs12(new_compare18(vyw5, vyw30, cg))
new_lt24(vyw5, vyw30, ty_Int) → new_lt15(vyw5, vyw30)
new_ltEs13(LT, LT) → True
new_ltEs6(vyw492, vyw502, ty_Int) → new_ltEs14(vyw492, vyw502)
new_esEs28(vyw490, vyw500, ty_Double) → new_esEs17(vyw490, vyw500)
new_ltEs8(Left(vyw490), Left(vyw500), ty_Double, bbg) → new_ltEs12(vyw490, vyw500)
new_primPlusNat1(Zero, Zero) → Zero
new_compare0([], :(vyw300, vyw301), cc) → LT
new_compare12(Just(vyw50), Nothing, cd) → GT
new_lt21(vyw490, vyw500, ty_Integer) → new_lt7(vyw490, vyw500)
new_esEs9(vyw50, vyw300, ty_Char) → new_esEs19(vyw50, vyw300)
new_asAs(True, vyw150) → vyw150
new_compare11(Char(vyw50), Char(vyw300)) → new_primCmpNat0(vyw50, vyw300)
new_esEs22(Right(vyw500), Right(vyw3000), cdf, ty_@0) → new_esEs16(vyw500, vyw3000)
new_ltEs6(vyw492, vyw502, app(app(ty_Either, ga), gb)) → new_ltEs8(vyw492, vyw502, ga, gb)
new_esEs22(Right(vyw500), Right(vyw3000), cdf, ty_Integer) → new_esEs21(vyw500, vyw3000)
new_esEs24(Just(vyw500), Just(vyw3000), app(ty_[], bfa)) → new_esEs20(vyw500, vyw3000, bfa)
new_esEs22(Left(vyw500), Left(vyw3000), ty_Ordering, ccc) → new_esEs26(vyw500, vyw3000)
new_esEs22(Right(vyw500), Right(vyw3000), cdf, ty_Ordering) → new_esEs26(vyw500, vyw3000)
new_esEs35(vyw501, vyw3001, ty_Double) → new_esEs17(vyw501, vyw3001)
new_lt21(vyw490, vyw500, ty_Double) → new_lt14(vyw490, vyw500)
new_esEs29(vyw500, vyw3000, ty_Integer) → new_esEs21(vyw500, vyw3000)
new_esEs22(Left(vyw500), Right(vyw3000), cdf, ccc) → False
new_esEs22(Right(vyw500), Left(vyw3000), cdf, ccc) → False
new_ltEs10(Just(vyw490), Just(vyw500), ty_Ordering) → new_ltEs13(vyw490, vyw500)
new_esEs37(vyw106, vyw109, ty_Integer) → new_esEs21(vyw106, vyw109)
new_ltEs8(Left(vyw490), Right(vyw500), bdb, bbg) → True
new_esEs5(vyw50, vyw300, app(app(ty_Either, fdc), fdd)) → new_esEs22(vyw50, vyw300, fdc, fdd)
new_ltEs20(vyw49, vyw50, app(ty_Maybe, cah)) → new_ltEs10(vyw49, vyw50, cah)
new_compare30(vyw50, vyw300, ty_@0) → new_compare5(vyw50, vyw300)
new_esEs37(vyw106, vyw109, ty_Char) → new_esEs19(vyw106, vyw109)
new_lt24(vyw5, vyw30, ty_Bool) → new_lt18(vyw5, vyw30)
new_ltEs22(vyw119, vyw121, ty_Double) → new_ltEs12(vyw119, vyw121)
new_gt(vyw21, vyw16, ty_Char) → new_esEs41(new_compare11(vyw21, vyw16))
new_esEs37(vyw106, vyw109, ty_Float) → new_esEs13(vyw106, vyw109)
new_ltEs8(Left(vyw490), Left(vyw500), ty_Integer, bbg) → new_ltEs7(vyw490, vyw500)
new_lt20(vyw118, vyw120, app(ty_Maybe, eec)) → new_lt12(vyw118, vyw120, eec)
new_esEs5(vyw50, vyw300, app(ty_[], fdb)) → new_esEs20(vyw50, vyw300, fdb)
new_primEqInt(Pos(Zero), Neg(Zero)) → True
new_primEqInt(Neg(Zero), Pos(Zero)) → True
new_ltEs10(Just(vyw490), Just(vyw500), ty_Double) → new_ltEs12(vyw490, vyw500)
new_esEs10(vyw51, vyw301, app(ty_[], dd)) → new_esEs20(vyw51, vyw301, dd)
new_not(True) → False
new_ltEs19(vyw83, vyw84, ty_Ordering) → new_ltEs13(vyw83, vyw84)
new_esEs22(Right(vyw500), Right(vyw3000), cdf, ty_Char) → new_esEs19(vyw500, vyw3000)
new_lt5(vyw491, vyw501, app(ty_Maybe, baa)) → new_lt12(vyw491, vyw501, baa)
new_compare5(@0, @0) → EQ
new_ltEs8(Right(vyw490), Right(vyw500), bdb, ty_Int) → new_ltEs14(vyw490, vyw500)
new_ltEs17(False, False) → True
new_esEs34(vyw490, vyw500, app(ty_[], egf)) → new_esEs20(vyw490, vyw500, egf)
new_esEs35(vyw501, vyw3001, ty_Integer) → new_esEs21(vyw501, vyw3001)
new_esEs7(vyw51, vyw301, ty_Int) → new_esEs14(vyw51, vyw301)
new_esEs9(vyw50, vyw300, app(app(ty_@2, bgf), bgg)) → new_esEs23(vyw50, vyw300, bgf, bgg)
new_esEs30(vyw502, vyw3002, ty_Ordering) → new_esEs26(vyw502, vyw3002)
new_ltEs19(vyw83, vyw84, app(ty_[], bhh)) → new_ltEs9(vyw83, vyw84, bhh)
new_ltEs14(vyw49, vyw50) → new_fsEs(new_compare15(vyw49, vyw50))
new_esEs26(GT, GT) → True
new_lt22(vyw105, vyw108, app(app(ty_@2, ffc), ffd)) → new_lt13(vyw105, vyw108, ffc, ffd)
new_ltEs15(vyw49, vyw50) → new_fsEs(new_compare5(vyw49, vyw50))
new_ltEs24(vyw107, vyw110, ty_Double) → new_ltEs12(vyw107, vyw110)
new_esEs28(vyw490, vyw500, ty_Int) → new_esEs14(vyw490, vyw500)
new_esEs31(vyw501, vyw3001, app(ty_Ratio, dbe)) → new_esEs25(vyw501, vyw3001, dbe)
new_ltEs19(vyw83, vyw84, ty_Float) → new_ltEs4(vyw83, vyw84)
new_esEs7(vyw51, vyw301, app(ty_Maybe, dfb)) → new_esEs24(vyw51, vyw301, dfb)
new_ltEs8(Left(vyw490), Left(vyw500), ty_Float, bbg) → new_ltEs4(vyw490, vyw500)
new_esEs8(vyw50, vyw300, ty_Ordering) → new_esEs26(vyw50, vyw300)
new_ltEs8(Right(vyw490), Right(vyw500), bdb, app(ty_[], bdh)) → new_ltEs9(vyw490, vyw500, bdh)
new_ltEs10(Just(vyw490), Just(vyw500), ty_Float) → new_ltEs4(vyw490, vyw500)
new_primMulNat0(Zero, Zero) → Zero
new_lt23(vyw106, vyw109, app(ty_Ratio, gaa)) → new_lt19(vyw106, vyw109, gaa)
new_esEs8(vyw50, vyw300, ty_Double) → new_esEs17(vyw50, vyw300)
new_esEs32(vyw500, vyw3000, app(app(ty_Either, dcb), dcc)) → new_esEs22(vyw500, vyw3000, dcb, dcc)
new_compare19(Left(vyw50), Right(vyw300), bf, bg) → LT
new_ltEs8(Right(vyw490), Right(vyw500), bdb, ty_Ordering) → new_ltEs13(vyw490, vyw500)
new_ltEs24(vyw107, vyw110, ty_Char) → new_ltEs16(vyw107, vyw110)
new_esEs38(vyw105, vyw108, ty_Double) → new_esEs17(vyw105, vyw108)
new_esEs30(vyw502, vyw3002, app(ty_Ratio, dac)) → new_esEs25(vyw502, vyw3002, dac)
new_esEs32(vyw500, vyw3000, app(ty_Maybe, dcf)) → new_esEs24(vyw500, vyw3000, dcf)
new_compare30(vyw50, vyw300, app(app(ty_@2, eab), eac)) → new_compare7(vyw50, vyw300, eab, eac)
new_esEs38(vyw105, vyw108, ty_Integer) → new_esEs21(vyw105, vyw108)
new_esEs7(vyw51, vyw301, ty_Float) → new_esEs13(vyw51, vyw301)
new_esEs11(vyw50, vyw300, ty_Double) → new_esEs17(vyw50, vyw300)
new_lt24(vyw5, vyw30, app(app(ty_@2, ce), cf)) → new_lt13(vyw5, vyw30, ce, cf)
new_esEs9(vyw50, vyw300, ty_Ordering) → new_esEs26(vyw50, vyw300)
new_esEs35(vyw501, vyw3001, app(ty_Ratio, faf)) → new_esEs25(vyw501, vyw3001, faf)
new_ltEs10(Just(vyw490), Just(vyw500), ty_@0) → new_ltEs15(vyw490, vyw500)
new_ltEs8(Right(vyw490), Right(vyw500), bdb, app(ty_Maybe, bea)) → new_ltEs10(vyw490, vyw500, bea)
new_lt20(vyw118, vyw120, ty_Double) → new_lt14(vyw118, vyw120)
new_esEs37(vyw106, vyw109, app(app(ty_Either, fgh), fha)) → new_esEs22(vyw106, vyw109, fgh, fha)
new_esEs34(vyw490, vyw500, app(app(ty_@2, egh), eha)) → new_esEs23(vyw490, vyw500, egh, eha)
new_esEs29(vyw500, vyw3000, app(app(ty_@2, cga), cgb)) → new_esEs23(vyw500, vyw3000, cga, cgb)
new_esEs8(vyw50, vyw300, app(ty_Ratio, dge)) → new_esEs25(vyw50, vyw300, dge)
new_esEs31(vyw501, vyw3001, app(app(ty_@2, dbb), dbc)) → new_esEs23(vyw501, vyw3001, dbb, dbc)
new_ltEs22(vyw119, vyw121, app(app(ty_Either, ecc), ecd)) → new_ltEs8(vyw119, vyw121, ecc, ecd)
new_ltEs21(vyw56, vyw57, ty_Double) → new_ltEs12(vyw56, vyw57)
new_esEs27(vyw491, vyw501, app(ty_Maybe, baa)) → new_esEs24(vyw491, vyw501, baa)
new_esEs7(vyw51, vyw301, app(app(ty_@2, deh), dfa)) → new_esEs23(vyw51, vyw301, deh, dfa)
new_lt7(vyw5, vyw30) → new_esEs12(new_compare29(vyw5, vyw30))
new_compare113(vyw170, vyw171, vyw172, vyw173, vyw174, vyw175, True, fcc, fcd, fce) → LT
new_compare30(vyw50, vyw300, app(app(ty_Either, dhc), dhd)) → new_compare19(vyw50, vyw300, dhc, dhd)
new_esEs33(vyw118, vyw120, ty_Double) → new_esEs17(vyw118, vyw120)
new_lt6(vyw490, vyw500, ty_Bool) → new_lt18(vyw490, vyw500)
new_lt5(vyw491, vyw501, ty_Integer) → new_lt7(vyw491, vyw501)
new_esEs33(vyw118, vyw120, ty_Integer) → new_esEs21(vyw118, vyw120)
new_ltEs8(Right(vyw490), Right(vyw500), bdb, app(ty_Ratio, bed)) → new_ltEs18(vyw490, vyw500, bed)
new_esEs7(vyw51, vyw301, ty_@0) → new_esEs16(vyw51, vyw301)
new_lt22(vyw105, vyw108, app(app(ty_Either, fed), fee)) → new_lt8(vyw105, vyw108, fed, fee)
new_esEs31(vyw501, vyw3001, app(app(app(ty_@3, dad), dae), daf)) → new_esEs15(vyw501, vyw3001, dad, dae, daf)
new_esEs37(vyw106, vyw109, app(ty_Ratio, gaa)) → new_esEs25(vyw106, vyw109, gaa)
new_compare12(Nothing, Nothing, cd) → EQ
new_esEs9(vyw50, vyw300, app(app(ty_Either, bgd), bge)) → new_esEs22(vyw50, vyw300, bgd, bge)
new_esEs35(vyw501, vyw3001, ty_Char) → new_esEs19(vyw501, vyw3001)
new_esEs9(vyw50, vyw300, ty_Bool) → new_esEs18(vyw50, vyw300)
new_compare27(vyw105, vyw106, vyw107, vyw108, vyw109, vyw110, False, fea, feb, fec) → new_compare112(vyw105, vyw106, vyw107, vyw108, vyw109, vyw110, new_lt22(vyw105, vyw108, fea), new_asAs(new_esEs38(vyw105, vyw108, fea), new_pePe(new_lt23(vyw106, vyw109, feb), new_asAs(new_esEs37(vyw106, vyw109, feb), new_ltEs24(vyw107, vyw110, fec)))), fea, feb, fec)
new_esEs4(vyw50, vyw300, app(app(app(ty_@3, cgg), cgh), cha)) → new_esEs15(vyw50, vyw300, cgg, cgh, cha)
new_lt23(vyw106, vyw109, app(ty_[], fhe)) → new_lt10(vyw106, vyw109, fhe)
new_esEs27(vyw491, vyw501, ty_Integer) → new_esEs21(vyw491, vyw501)
new_ltEs13(EQ, GT) → True
new_esEs35(vyw501, vyw3001, app(app(app(ty_@3, ehe), ehf), ehg)) → new_esEs15(vyw501, vyw3001, ehe, ehf, ehg)
new_compare6(LT, EQ) → LT
new_lt5(vyw491, vyw501, ty_Int) → new_lt15(vyw491, vyw501)
new_ltEs19(vyw83, vyw84, app(ty_Ratio, cad)) → new_ltEs18(vyw83, vyw84, cad)
new_esEs12(LT) → True
new_esEs38(vyw105, vyw108, ty_Float) → new_esEs13(vyw105, vyw108)
new_esEs34(vyw490, vyw500, ty_Float) → new_esEs13(vyw490, vyw500)
new_lt22(vyw105, vyw108, ty_Bool) → new_lt18(vyw105, vyw108)
new_esEs28(vyw490, vyw500, app(app(ty_Either, bae), baf)) → new_esEs22(vyw490, vyw500, bae, baf)
new_primCmpNat0(Zero, Succ(vyw3000)) → LT
new_ltEs8(Right(vyw490), Right(vyw500), bdb, app(app(ty_@2, beb), bec)) → new_ltEs11(vyw490, vyw500, beb, bec)
new_esEs9(vyw50, vyw300, ty_Float) → new_esEs13(vyw50, vyw300)
new_compare30(vyw50, vyw300, ty_Char) → new_compare11(vyw50, vyw300)
new_esEs9(vyw50, vyw300, app(ty_Ratio, bha)) → new_esEs25(vyw50, vyw300, bha)
new_ltEs22(vyw119, vyw121, ty_Integer) → new_ltEs7(vyw119, vyw121)
new_lt5(vyw491, vyw501, app(app(ty_Either, hc), hd)) → new_lt8(vyw491, vyw501, hc, hd)
new_esEs37(vyw106, vyw109, ty_Int) → new_esEs14(vyw106, vyw109)
new_esEs22(Right(vyw500), Right(vyw3000), cdf, ty_Float) → new_esEs13(vyw500, vyw3000)
new_esEs24(Just(vyw500), Just(vyw3000), app(app(ty_Either, bfb), bfc)) → new_esEs22(vyw500, vyw3000, bfb, bfc)
new_esEs33(vyw118, vyw120, app(ty_Ratio, eef)) → new_esEs25(vyw118, vyw120, eef)
new_esEs26(EQ, LT) → False
new_esEs26(LT, EQ) → False
new_esEs34(vyw490, vyw500, app(app(ty_Either, ega), egb)) → new_esEs22(vyw490, vyw500, ega, egb)
new_ltEs24(vyw107, vyw110, app(ty_Maybe, fgd)) → new_ltEs10(vyw107, vyw110, fgd)
new_esEs33(vyw118, vyw120, ty_Float) → new_esEs13(vyw118, vyw120)
new_ltEs10(Just(vyw490), Just(vyw500), app(ty_Maybe, cbg)) → new_ltEs10(vyw490, vyw500, cbg)
new_esEs39(vyw501, vyw3001, ty_Integer) → new_esEs21(vyw501, vyw3001)
new_gt(vyw21, vyw16, app(app(app(ty_@3, gad), gae), gaf)) → new_esEs41(new_compare10(vyw21, vyw16, gad, gae, gaf))
new_lt20(vyw118, vyw120, ty_Int) → new_lt15(vyw118, vyw120)
new_compare111(vyw134, vyw135, False, fca, fcb) → GT
new_ltEs19(vyw83, vyw84, app(app(ty_Either, bhc), bhd)) → new_ltEs8(vyw83, vyw84, bhc, bhd)
new_esEs5(vyw50, vyw300, app(ty_Ratio, fdh)) → new_esEs25(vyw50, vyw300, fdh)
new_esEs5(vyw50, vyw300, app(app(app(ty_@3, fcg), fch), fda)) → new_esEs15(vyw50, vyw300, fcg, fch, fda)
new_esEs38(vyw105, vyw108, ty_Bool) → new_esEs18(vyw105, vyw108)
new_lt24(vyw5, vyw30, ty_Double) → new_lt14(vyw5, vyw30)
new_ltEs23(vyw491, vyw501, ty_Ordering) → new_ltEs13(vyw491, vyw501)
new_esEs4(vyw50, vyw300, app(ty_Ratio, fcf)) → new_esEs25(vyw50, vyw300, fcf)
new_sr(vyw51, vyw301) → new_primMulInt(vyw51, vyw301)
new_esEs34(vyw490, vyw500, ty_Double) → new_esEs17(vyw490, vyw500)
new_esEs24(Just(vyw500), Just(vyw3000), ty_Bool) → new_esEs18(vyw500, vyw3000)
new_esEs35(vyw501, vyw3001, app(ty_Maybe, fae)) → new_esEs24(vyw501, vyw3001, fae)
new_esEs30(vyw502, vyw3002, app(ty_Maybe, dab)) → new_esEs24(vyw502, vyw3002, dab)
new_lt6(vyw490, vyw500, app(app(app(ty_@3, bag), bah), bba)) → new_lt9(vyw490, vyw500, bag, bah, bba)
new_esEs36(vyw500, vyw3000, app(ty_Maybe, fbg)) → new_esEs24(vyw500, vyw3000, fbg)
new_ltEs10(Just(vyw490), Just(vyw500), ty_Bool) → new_ltEs17(vyw490, vyw500)
new_esEs32(vyw500, vyw3000, ty_Double) → new_esEs17(vyw500, vyw3000)
new_compare18(:%(vyw50, vyw51), :%(vyw300, vyw301), ty_Integer) → new_compare29(new_sr0(vyw50, vyw301), new_sr0(vyw300, vyw51))
new_ltEs20(vyw49, vyw50, app(app(app(ty_@3, ff), fg), fh)) → new_ltEs5(vyw49, vyw50, ff, fg, fh)
new_esEs32(vyw500, vyw3000, ty_Int) → new_esEs14(vyw500, vyw3000)
new_esEs28(vyw490, vyw500, app(ty_[], bbb)) → new_esEs20(vyw490, vyw500, bbb)
new_lt22(vyw105, vyw108, ty_Ordering) → new_lt4(vyw105, vyw108)
new_ltEs12(vyw49, vyw50) → new_fsEs(new_compare14(vyw49, vyw50))
new_ltEs8(Left(vyw490), Left(vyw500), app(app(app(ty_@3, bcb), bcc), bcd), bbg) → new_ltEs5(vyw490, vyw500, bcb, bcc, bcd)
new_lt24(vyw5, vyw30, app(ty_[], cc)) → new_lt10(vyw5, vyw30, cc)
new_esEs29(vyw500, vyw3000, app(ty_Maybe, cgc)) → new_esEs24(vyw500, vyw3000, cgc)
new_ltEs16(vyw49, vyw50) → new_fsEs(new_compare11(vyw49, vyw50))
new_esEs11(vyw50, vyw300, app(app(app(ty_@3, ec), ed), ee)) → new_esEs15(vyw50, vyw300, ec, ed, ee)
new_ltEs18(vyw49, vyw50, cag) → new_fsEs(new_compare18(vyw49, vyw50, cag))
new_ltEs17(True, False) → False
new_esEs24(Just(vyw500), Just(vyw3000), ty_Ordering) → new_esEs26(vyw500, vyw3000)
new_compare10(@3(vyw50, vyw51, vyw52), @3(vyw300, vyw301, vyw302), bh, ca, cb) → new_compare27(vyw50, vyw51, vyw52, vyw300, vyw301, vyw302, new_asAs(new_esEs8(vyw50, vyw300, bh), new_asAs(new_esEs7(vyw51, vyw301, ca), new_esEs6(vyw52, vyw302, cb))), bh, ca, cb)
new_lt22(vyw105, vyw108, ty_Int) → new_lt15(vyw105, vyw108)
new_esEs24(Nothing, Nothing, bee) → True
new_esEs20(:(vyw500, vyw501), [], cfb) → False
new_esEs20([], :(vyw3000, vyw3001), cfb) → False
new_ltEs8(Left(vyw490), Left(vyw500), app(ty_Maybe, bcf), bbg) → new_ltEs10(vyw490, vyw500, bcf)
new_compare29(Integer(vyw50), Integer(vyw300)) → new_primCmpInt(vyw50, vyw300)
new_lt24(vyw5, vyw30, ty_Char) → new_lt17(vyw5, vyw30)
new_primEqInt(Neg(Succ(vyw5000)), Neg(Zero)) → False
new_primEqInt(Neg(Zero), Neg(Succ(vyw30000))) → False
new_esEs24(Just(vyw500), Just(vyw3000), app(ty_Maybe, bff)) → new_esEs24(vyw500, vyw3000, bff)
new_esEs37(vyw106, vyw109, ty_Double) → new_esEs17(vyw106, vyw109)
new_lt22(vyw105, vyw108, app(app(app(ty_@3, fef), feg), feh)) → new_lt9(vyw105, vyw108, fef, feg, feh)
new_esEs34(vyw490, vyw500, ty_Int) → new_esEs14(vyw490, vyw500)
new_esEs22(Left(vyw500), Left(vyw3000), app(ty_[], ccg), ccc) → new_esEs20(vyw500, vyw3000, ccg)
new_esEs35(vyw501, vyw3001, app(ty_[], ehh)) → new_esEs20(vyw501, vyw3001, ehh)
new_esEs11(vyw50, vyw300, ty_Int) → new_esEs14(vyw50, vyw300)
new_esEs10(vyw51, vyw301, app(app(app(ty_@3, da), db), dc)) → new_esEs15(vyw51, vyw301, da, db, dc)
new_compare6(GT, GT) → EQ
new_esEs30(vyw502, vyw3002, ty_Float) → new_esEs13(vyw502, vyw3002)
new_ltEs24(vyw107, vyw110, app(app(app(ty_@3, ffh), fga), fgb)) → new_ltEs5(vyw107, vyw110, ffh, fga, fgb)
new_esEs8(vyw50, vyw300, ty_Char) → new_esEs19(vyw50, vyw300)
new_esEs22(Left(vyw500), Left(vyw3000), ty_Double, ccc) → new_esEs17(vyw500, vyw3000)
new_esEs29(vyw500, vyw3000, ty_Float) → new_esEs13(vyw500, vyw3000)
new_primCmpNat0(Succ(vyw500), Succ(vyw3000)) → new_primCmpNat0(vyw500, vyw3000)
new_esEs6(vyw52, vyw302, ty_Double) → new_esEs17(vyw52, vyw302)
new_esEs31(vyw501, vyw3001, ty_Ordering) → new_esEs26(vyw501, vyw3001)
new_esEs29(vyw500, vyw3000, app(ty_[], cff)) → new_esEs20(vyw500, vyw3000, cff)
new_ltEs13(GT, LT) → False
new_gt(vyw21, vyw16, app(ty_Ratio, gbc)) → new_esEs41(new_compare18(vyw21, vyw16, gbc))
new_esEs22(Left(vyw500), Left(vyw3000), ty_@0, ccc) → new_esEs16(vyw500, vyw3000)
new_compare210(vyw56, vyw57, False, eae, eaf) → new_compare110(vyw56, vyw57, new_ltEs21(vyw56, vyw57, eaf), eae, eaf)
new_ltEs13(EQ, EQ) → True
new_esEs7(vyw51, vyw301, app(app(app(ty_@3, deb), dec), ded)) → new_esEs15(vyw51, vyw301, deb, dec, ded)
new_esEs9(vyw50, vyw300, app(ty_[], bgc)) → new_esEs20(vyw50, vyw300, bgc)
new_lt10(vyw5, vyw30, cc) → new_esEs12(new_compare0(vyw5, vyw30, cc))
new_ltEs8(Right(vyw490), Right(vyw500), bdb, ty_@0) → new_ltEs15(vyw490, vyw500)
new_esEs5(vyw50, vyw300, ty_Double) → new_esEs17(vyw50, vyw300)
new_esEs20(:(vyw500, vyw501), :(vyw3000, vyw3001), cfb) → new_asAs(new_esEs29(vyw500, vyw3000, cfb), new_esEs20(vyw501, vyw3001, cfb))
new_esEs28(vyw490, vyw500, ty_Integer) → new_esEs21(vyw490, vyw500)
new_lt21(vyw490, vyw500, app(ty_Maybe, egg)) → new_lt12(vyw490, vyw500, egg)
new_esEs8(vyw50, vyw300, ty_Bool) → new_esEs18(vyw50, vyw300)
new_primCompAux00(vyw77, LT) → LT
new_esEs30(vyw502, vyw3002, ty_Int) → new_esEs14(vyw502, vyw3002)
new_esEs35(vyw501, vyw3001, ty_Bool) → new_esEs18(vyw501, vyw3001)
new_esEs36(vyw500, vyw3000, app(app(ty_Either, fbc), fbd)) → new_esEs22(vyw500, vyw3000, fbc, fbd)
new_ltEs8(Left(vyw490), Left(vyw500), app(app(ty_@2, bcg), bch), bbg) → new_ltEs11(vyw490, vyw500, bcg, bch)
new_esEs31(vyw501, vyw3001, ty_Bool) → new_esEs18(vyw501, vyw3001)
new_ltEs6(vyw492, vyw502, ty_Bool) → new_ltEs17(vyw492, vyw502)
new_primEqInt(Pos(Succ(vyw5000)), Pos(Zero)) → False
new_primEqInt(Pos(Zero), Pos(Succ(vyw30000))) → False
new_lt8(vyw5, vyw30, bf, bg) → new_esEs12(new_compare19(vyw5, vyw30, bf, bg))
new_esEs11(vyw50, vyw300, ty_@0) → new_esEs16(vyw50, vyw300)
new_primCmpNat0(Zero, Zero) → EQ
new_compare27(vyw105, vyw106, vyw107, vyw108, vyw109, vyw110, True, fea, feb, fec) → EQ
new_primCmpNat0(Succ(vyw500), Zero) → GT
new_esEs11(vyw50, vyw300, app(ty_[], ef)) → new_esEs20(vyw50, vyw300, ef)
new_primCmpInt(Neg(Zero), Pos(Succ(vyw3000))) → LT
new_compare8(Float(vyw50, vyw51), Float(vyw300, vyw301)) → new_compare15(new_sr(vyw50, vyw300), new_sr(vyw51, vyw301))
new_sr0(Integer(vyw3000), Integer(vyw510)) → Integer(new_primMulInt(vyw3000, vyw510))
new_esEs31(vyw501, vyw3001, ty_Int) → new_esEs14(vyw501, vyw3001)
new_compare28(vyw49, vyw50, True, dgf, dgg) → EQ
new_primEqInt(Pos(Succ(vyw5000)), Neg(vyw3000)) → False
new_primEqInt(Neg(Succ(vyw5000)), Pos(vyw3000)) → False
new_esEs22(Right(vyw500), Right(vyw3000), cdf, app(ty_Ratio, ceh)) → new_esEs25(vyw500, vyw3000, ceh)
new_compare30(vyw50, vyw300, app(app(app(ty_@3, dhe), dhf), dhg)) → new_compare10(vyw50, vyw300, dhe, dhf, dhg)
new_esEs33(vyw118, vyw120, ty_Bool) → new_esEs18(vyw118, vyw120)
new_compare113(vyw170, vyw171, vyw172, vyw173, vyw174, vyw175, False, fcc, fcd, fce) → GT
new_esEs32(vyw500, vyw3000, app(ty_Ratio, dcg)) → new_esEs25(vyw500, vyw3000, dcg)
new_esEs38(vyw105, vyw108, ty_Ordering) → new_esEs26(vyw105, vyw108)
new_lt20(vyw118, vyw120, app(app(ty_@2, eed), eee)) → new_lt13(vyw118, vyw120, eed, eee)
new_ltEs23(vyw491, vyw501, ty_Int) → new_ltEs14(vyw491, vyw501)
new_esEs6(vyw52, vyw302, app(ty_Maybe, ddh)) → new_esEs24(vyw52, vyw302, ddh)
new_fsEs(vyw192) → new_not(new_esEs26(vyw192, GT))
new_lt21(vyw490, vyw500, ty_Char) → new_lt17(vyw490, vyw500)
new_lt24(vyw5, vyw30, app(app(app(ty_@3, bh), ca), cb)) → new_lt9(vyw5, vyw30, bh, ca, cb)
new_esEs34(vyw490, vyw500, app(ty_Maybe, egg)) → new_esEs24(vyw490, vyw500, egg)
new_lt20(vyw118, vyw120, app(app(app(ty_@3, edg), edh), eea)) → new_lt9(vyw118, vyw120, edg, edh, eea)
new_esEs10(vyw51, vyw301, ty_Char) → new_esEs19(vyw51, vyw301)
new_lt23(vyw106, vyw109, app(app(app(ty_@3, fhb), fhc), fhd)) → new_lt9(vyw106, vyw109, fhb, fhc, fhd)
new_esEs22(Right(vyw500), Right(vyw3000), cdf, app(ty_[], ceb)) → new_esEs20(vyw500, vyw3000, ceb)
new_compare19(Left(vyw50), Left(vyw300), bf, bg) → new_compare28(vyw50, vyw300, new_esEs4(vyw50, vyw300, bf), bf, bg)
new_ltEs10(Just(vyw490), Just(vyw500), app(app(ty_Either, cba), cbb)) → new_ltEs8(vyw490, vyw500, cba, cbb)
new_ltEs24(vyw107, vyw110, ty_Integer) → new_ltEs7(vyw107, vyw110)
new_ltEs23(vyw491, vyw501, app(ty_Ratio, efh)) → new_ltEs18(vyw491, vyw501, efh)
new_esEs32(vyw500, vyw3000, app(app(app(ty_@3, dbf), dbg), dbh)) → new_esEs15(vyw500, vyw3000, dbf, dbg, dbh)
new_esEs41(EQ) → False
new_esEs34(vyw490, vyw500, app(app(app(ty_@3, egc), egd), ege)) → new_esEs15(vyw490, vyw500, egc, egd, ege)
new_esEs31(vyw501, vyw3001, app(ty_[], dag)) → new_esEs20(vyw501, vyw3001, dag)
new_compare26(vyw83, vyw84, True, bhb) → EQ
new_ltEs10(Nothing, Nothing, cah) → True
new_esEs28(vyw490, vyw500, app(ty_Maybe, bbc)) → new_esEs24(vyw490, vyw500, bbc)
new_gt(vyw21, vyw16, ty_Integer) → new_esEs41(new_compare29(vyw21, vyw16))
new_ltEs8(Right(vyw490), Right(vyw500), bdb, app(app(ty_Either, bdc), bdd)) → new_ltEs8(vyw490, vyw500, bdc, bdd)
new_ltEs6(vyw492, vyw502, app(ty_Maybe, gg)) → new_ltEs10(vyw492, vyw502, gg)
new_primPlusNat0(Zero, vyw30100) → Succ(vyw30100)
new_primCmpInt(Pos(Succ(vyw500)), Pos(vyw300)) → new_primCmpNat0(Succ(vyw500), vyw300)
new_compare210(vyw56, vyw57, True, eae, eaf) → EQ
new_esEs9(vyw50, vyw300, ty_@0) → new_esEs16(vyw50, vyw300)
new_ltEs23(vyw491, vyw501, app(app(ty_Either, eeg), eeh)) → new_ltEs8(vyw491, vyw501, eeg, eeh)
new_ltEs22(vyw119, vyw121, ty_Int) → new_ltEs14(vyw119, vyw121)
new_compare17(vyw185, vyw186, vyw187, vyw188, False, cae, caf) → GT
new_esEs34(vyw490, vyw500, app(ty_Ratio, ehb)) → new_esEs25(vyw490, vyw500, ehb)
new_compare6(GT, LT) → GT
new_lt6(vyw490, vyw500, ty_@0) → new_lt16(vyw490, vyw500)
new_esEs34(vyw490, vyw500, ty_Char) → new_esEs19(vyw490, vyw500)
new_esEs31(vyw501, vyw3001, app(ty_Maybe, dbd)) → new_esEs24(vyw501, vyw3001, dbd)
new_lt21(vyw490, vyw500, app(app(app(ty_@3, egc), egd), ege)) → new_lt9(vyw490, vyw500, egc, egd, ege)
new_lt22(vyw105, vyw108, ty_Double) → new_lt14(vyw105, vyw108)
new_gt(vyw21, vyw16, ty_Float) → new_esEs41(new_compare8(vyw21, vyw16))
new_lt22(vyw105, vyw108, ty_Integer) → new_lt7(vyw105, vyw108)
new_esEs36(vyw500, vyw3000, ty_@0) → new_esEs16(vyw500, vyw3000)
new_lt6(vyw490, vyw500, ty_Int) → new_lt15(vyw490, vyw500)
new_esEs26(GT, EQ) → False
new_esEs26(EQ, GT) → False
new_primCmpInt(Pos(Succ(vyw500)), Neg(vyw300)) → GT
new_ltEs24(vyw107, vyw110, ty_Ordering) → new_ltEs13(vyw107, vyw110)
new_lt6(vyw490, vyw500, ty_Integer) → new_lt7(vyw490, vyw500)
new_ltEs10(Just(vyw490), Just(vyw500), app(ty_[], cbf)) → new_ltEs9(vyw490, vyw500, cbf)
new_esEs29(vyw500, vyw3000, ty_@0) → new_esEs16(vyw500, vyw3000)
new_ltEs6(vyw492, vyw502, ty_Integer) → new_ltEs7(vyw492, vyw502)
new_primMulInt(Pos(vyw510), Pos(vyw3010)) → Pos(new_primMulNat0(vyw510, vyw3010))
new_esEs4(vyw50, vyw300, app(ty_[], cfb)) → new_esEs20(vyw50, vyw300, cfb)
new_ltEs21(vyw56, vyw57, ty_Ordering) → new_ltEs13(vyw56, vyw57)
new_lt22(vyw105, vyw108, ty_@0) → new_lt16(vyw105, vyw108)
new_ltEs7(vyw49, vyw50) → new_fsEs(new_compare29(vyw49, vyw50))
new_gt(vyw21, vyw16, app(app(ty_Either, gab), gac)) → new_esEs41(new_compare19(vyw21, vyw16, gab, gac))
new_ltEs10(Just(vyw490), Just(vyw500), ty_Integer) → new_ltEs7(vyw490, vyw500)
new_lt16(vyw5, vyw30) → new_esEs12(new_compare5(vyw5, vyw30))
new_ltEs21(vyw56, vyw57, ty_Integer) → new_ltEs7(vyw56, vyw57)
new_ltEs22(vyw119, vyw121, ty_Ordering) → new_ltEs13(vyw119, vyw121)
new_compare30(vyw50, vyw300, ty_Bool) → new_compare9(vyw50, vyw300)
new_primEqInt(Pos(Zero), Pos(Zero)) → True
new_esEs33(vyw118, vyw120, app(ty_Maybe, eec)) → new_esEs24(vyw118, vyw120, eec)
new_lt24(vyw5, vyw30, app(app(ty_Either, bf), bg)) → new_lt8(vyw5, vyw30, bf, bg)
new_gt(vyw21, vyw16, app(app(ty_@2, gba), gbb)) → new_esEs41(new_compare7(vyw21, vyw16, gba, gbb))
new_ltEs21(vyw56, vyw57, app(app(app(ty_@3, eba), ebb), ebc)) → new_ltEs5(vyw56, vyw57, eba, ebb, ebc)
new_ltEs20(vyw49, vyw50, ty_Float) → new_ltEs4(vyw49, vyw50)
new_esEs11(vyw50, vyw300, ty_Float) → new_esEs13(vyw50, vyw300)
new_ltEs23(vyw491, vyw501, ty_Integer) → new_ltEs7(vyw491, vyw501)
new_esEs8(vyw50, vyw300, app(app(ty_@2, dgb), dgc)) → new_esEs23(vyw50, vyw300, dgb, dgc)
new_lt5(vyw491, vyw501, ty_Double) → new_lt14(vyw491, vyw501)
new_esEs7(vyw51, vyw301, app(ty_Ratio, dfc)) → new_esEs25(vyw51, vyw301, dfc)
new_compare13(vyw155, vyw156, False, cfa) → GT
new_primCmpInt(Neg(Zero), Neg(Succ(vyw3000))) → new_primCmpNat0(Succ(vyw3000), Zero)
new_compare28(vyw49, vyw50, False, dgf, dgg) → new_compare111(vyw49, vyw50, new_ltEs20(vyw49, vyw50, dgf), dgf, dgg)
new_esEs27(vyw491, vyw501, app(app(ty_@2, bab), bac)) → new_esEs23(vyw491, vyw501, bab, bac)
new_esEs9(vyw50, vyw300, app(app(app(ty_@3, bfh), bga), bgb)) → new_esEs15(vyw50, vyw300, bfh, bga, bgb)
new_lt21(vyw490, vyw500, ty_Ordering) → new_lt4(vyw490, vyw500)
new_esEs22(Left(vyw500), Left(vyw3000), ty_Float, ccc) → new_esEs13(vyw500, vyw3000)
new_compare112(vyw170, vyw171, vyw172, vyw173, vyw174, vyw175, False, vyw177, fcc, fcd, fce) → new_compare113(vyw170, vyw171, vyw172, vyw173, vyw174, vyw175, vyw177, fcc, fcd, fce)
new_esEs27(vyw491, vyw501, app(ty_Ratio, bad)) → new_esEs25(vyw491, vyw501, bad)
new_ltEs10(Nothing, Just(vyw500), cah) → True
new_lt11(vyw5, vyw30) → new_esEs12(new_compare8(vyw5, vyw30))
new_esEs27(vyw491, vyw501, ty_Int) → new_esEs14(vyw491, vyw501)
new_lt23(vyw106, vyw109, app(app(ty_Either, fgh), fha)) → new_lt8(vyw106, vyw109, fgh, fha)
new_ltEs24(vyw107, vyw110, ty_Bool) → new_ltEs17(vyw107, vyw110)
new_esEs10(vyw51, vyw301, app(ty_Maybe, ea)) → new_esEs24(vyw51, vyw301, ea)
new_esEs27(vyw491, vyw501, ty_Float) → new_esEs13(vyw491, vyw501)
new_lt12(vyw5, vyw30, cd) → new_esEs12(new_compare12(vyw5, vyw30, cd))
new_ltEs6(vyw492, vyw502, ty_Float) → new_ltEs4(vyw492, vyw502)
new_primMulNat0(Succ(vyw5100), Zero) → Zero
new_primMulNat0(Zero, Succ(vyw30100)) → Zero
new_ltEs22(vyw119, vyw121, app(ty_Maybe, eda)) → new_ltEs10(vyw119, vyw121, eda)
new_esEs5(vyw50, vyw300, ty_Char) → new_esEs19(vyw50, vyw300)
new_esEs38(vyw105, vyw108, ty_@0) → new_esEs16(vyw105, vyw108)
new_ltEs19(vyw83, vyw84, ty_Char) → new_ltEs16(vyw83, vyw84)
new_esEs18(True, True) → True
new_esEs29(vyw500, vyw3000, ty_Double) → new_esEs17(vyw500, vyw3000)
new_ltEs23(vyw491, vyw501, ty_Char) → new_ltEs16(vyw491, vyw501)
new_ltEs8(Left(vyw490), Left(vyw500), ty_Int, bbg) → new_ltEs14(vyw490, vyw500)
new_lt22(vyw105, vyw108, app(ty_[], ffa)) → new_lt10(vyw105, vyw108, ffa)
new_ltEs8(Right(vyw490), Left(vyw500), bdb, bbg) → False
new_esEs31(vyw501, vyw3001, ty_Double) → new_esEs17(vyw501, vyw3001)
new_lt23(vyw106, vyw109, ty_Integer) → new_lt7(vyw106, vyw109)
new_lt23(vyw106, vyw109, ty_Float) → new_lt11(vyw106, vyw109)
new_ltEs8(Right(vyw490), Right(vyw500), bdb, app(app(app(ty_@3, bde), bdf), bdg)) → new_ltEs5(vyw490, vyw500, bde, bdf, bdg)
new_ltEs17(True, True) → True
new_esEs27(vyw491, vyw501, ty_Double) → new_esEs17(vyw491, vyw501)
new_esEs9(vyw50, vyw300, ty_Integer) → new_esEs21(vyw50, vyw300)
new_lt23(vyw106, vyw109, app(app(ty_@2, fhg), fhh)) → new_lt13(vyw106, vyw109, fhg, fhh)
new_lt21(vyw490, vyw500, ty_Bool) → new_lt18(vyw490, vyw500)
new_esEs6(vyw52, vyw302, app(app(app(ty_@3, dch), dda), ddb)) → new_esEs15(vyw52, vyw302, dch, dda, ddb)
new_lt5(vyw491, vyw501, app(ty_Ratio, bad)) → new_lt19(vyw491, vyw501, bad)
new_esEs11(vyw50, vyw300, ty_Ordering) → new_esEs26(vyw50, vyw300)
new_esEs28(vyw490, vyw500, ty_Char) → new_esEs19(vyw490, vyw500)
new_esEs4(vyw50, vyw300, ty_Bool) → new_esEs18(vyw50, vyw300)
new_esEs8(vyw50, vyw300, app(ty_Maybe, dgd)) → new_esEs24(vyw50, vyw300, dgd)
new_esEs14(vyw50, vyw300) → new_primEqInt(vyw50, vyw300)
new_ltEs9(vyw49, vyw50, dgh) → new_fsEs(new_compare0(vyw49, vyw50, dgh))
new_esEs41(LT) → False
new_esEs22(Right(vyw500), Right(vyw3000), cdf, app(app(app(ty_@3, cdg), cdh), cea)) → new_esEs15(vyw500, vyw3000, cdg, cdh, cea)
new_ltEs19(vyw83, vyw84, app(app(app(ty_@3, bhe), bhf), bhg)) → new_ltEs5(vyw83, vyw84, bhe, bhf, bhg)
new_compare9(False, True) → LT
new_compare30(vyw50, vyw300, ty_Int) → new_compare15(vyw50, vyw300)
new_esEs8(vyw50, vyw300, ty_Float) → new_esEs13(vyw50, vyw300)
new_esEs8(vyw50, vyw300, ty_Integer) → new_esEs21(vyw50, vyw300)
new_ltEs21(vyw56, vyw57, ty_@0) → new_ltEs15(vyw56, vyw57)
new_esEs31(vyw501, vyw3001, ty_Float) → new_esEs13(vyw501, vyw3001)
new_compare6(EQ, GT) → LT
new_esEs31(vyw501, vyw3001, ty_Integer) → new_esEs21(vyw501, vyw3001)
new_lt21(vyw490, vyw500, app(ty_Ratio, ehb)) → new_lt19(vyw490, vyw500, ehb)
new_esEs9(vyw50, vyw300, ty_Int) → new_esEs14(vyw50, vyw300)
new_gt(vyw21, vyw16, ty_Bool) → new_esEs41(new_compare9(vyw21, vyw16))
new_esEs35(vyw501, vyw3001, app(app(ty_@2, fac), fad)) → new_esEs23(vyw501, vyw3001, fac, fad)
new_ltEs22(vyw119, vyw121, app(ty_[], ech)) → new_ltEs9(vyw119, vyw121, ech)
new_esEs11(vyw50, vyw300, app(app(ty_@2, fa), fb)) → new_esEs23(vyw50, vyw300, fa, fb)
new_ltEs20(vyw49, vyw50, ty_Double) → new_ltEs12(vyw49, vyw50)
new_lt18(vyw5, vyw30) → new_esEs12(new_compare9(vyw5, vyw30))
new_esEs29(vyw500, vyw3000, ty_Bool) → new_esEs18(vyw500, vyw3000)
new_lt6(vyw490, vyw500, ty_Float) → new_lt11(vyw490, vyw500)
new_esEs7(vyw51, vyw301, app(ty_[], dee)) → new_esEs20(vyw51, vyw301, dee)
new_esEs27(vyw491, vyw501, ty_Bool) → new_esEs18(vyw491, vyw501)
new_esEs29(vyw500, vyw3000, app(app(ty_Either, cfg), cfh)) → new_esEs22(vyw500, vyw3000, cfg, cfh)
new_ltEs19(vyw83, vyw84, ty_Integer) → new_ltEs7(vyw83, vyw84)
new_ltEs6(vyw492, vyw502, ty_Char) → new_ltEs16(vyw492, vyw502)
new_ltEs23(vyw491, vyw501, ty_@0) → new_ltEs15(vyw491, vyw501)
new_esEs33(vyw118, vyw120, app(ty_[], eeb)) → new_esEs20(vyw118, vyw120, eeb)
new_esEs36(vyw500, vyw3000, ty_Integer) → new_esEs21(vyw500, vyw3000)
new_compare111(vyw134, vyw135, True, fca, fcb) → LT
new_ltEs8(Left(vyw490), Left(vyw500), ty_@0, bbg) → new_ltEs15(vyw490, vyw500)
new_esEs4(vyw50, vyw300, ty_Integer) → new_esEs21(vyw50, vyw300)
new_ltEs11(@2(vyw490, vyw491), @2(vyw500, vyw501), dha, dhb) → new_pePe(new_lt21(vyw490, vyw500, dha), new_asAs(new_esEs34(vyw490, vyw500, dha), new_ltEs23(vyw491, vyw501, dhb)))
new_primMulNat0(Succ(vyw5100), Succ(vyw30100)) → new_primPlusNat0(new_primMulNat0(vyw5100, Succ(vyw30100)), vyw30100)
new_esEs17(Double(vyw500, vyw501), Double(vyw3000, vyw3001)) → new_esEs14(new_sr(vyw500, vyw3000), new_sr(vyw501, vyw3001))
new_ltEs20(vyw49, vyw50, app(app(ty_Either, bdb), bbg)) → new_ltEs8(vyw49, vyw50, bdb, bbg)
new_lt24(vyw5, vyw30, app(ty_Maybe, cd)) → new_lt12(vyw5, vyw30, cd)
new_esEs24(Just(vyw500), Just(vyw3000), app(app(app(ty_@3, bef), beg), beh)) → new_esEs15(vyw500, vyw3000, bef, beg, beh)
new_lt9(vyw5, vyw30, bh, ca, cb) → new_esEs12(new_compare10(vyw5, vyw30, bh, ca, cb))
new_lt6(vyw490, vyw500, ty_Char) → new_lt17(vyw490, vyw500)
new_ltEs10(Just(vyw490), Just(vyw500), ty_Int) → new_ltEs14(vyw490, vyw500)
new_esEs33(vyw118, vyw120, app(app(app(ty_@3, edg), edh), eea)) → new_esEs15(vyw118, vyw120, edg, edh, eea)
new_esEs22(Left(vyw500), Left(vyw3000), ty_Bool, ccc) → new_esEs18(vyw500, vyw3000)
new_esEs10(vyw51, vyw301, app(app(ty_Either, de), df)) → new_esEs22(vyw51, vyw301, de, df)
new_esEs27(vyw491, vyw501, app(app(app(ty_@3, he), hf), hg)) → new_esEs15(vyw491, vyw501, he, hf, hg)
new_ltEs6(vyw492, vyw502, app(ty_[], gf)) → new_ltEs9(vyw492, vyw502, gf)
new_esEs30(vyw502, vyw3002, app(app(app(ty_@3, chb), chc), chd)) → new_esEs15(vyw502, vyw3002, chb, chc, chd)
new_esEs8(vyw50, vyw300, ty_@0) → new_esEs16(vyw50, vyw300)
new_esEs36(vyw500, vyw3000, ty_Float) → new_esEs13(vyw500, vyw3000)
new_esEs6(vyw52, vyw302, ty_@0) → new_esEs16(vyw52, vyw302)
new_lt6(vyw490, vyw500, app(ty_Ratio, bbf)) → new_lt19(vyw490, vyw500, bbf)
new_compare6(GT, EQ) → GT
new_esEs36(vyw500, vyw3000, app(app(ty_@2, fbe), fbf)) → new_esEs23(vyw500, vyw3000, fbe, fbf)
new_lt23(vyw106, vyw109, ty_Int) → new_lt15(vyw106, vyw109)
new_esEs32(vyw500, vyw3000, ty_Char) → new_esEs19(vyw500, vyw3000)
new_esEs11(vyw50, vyw300, app(app(ty_Either, eg), eh)) → new_esEs22(vyw50, vyw300, eg, eh)
new_compare26(vyw83, vyw84, False, bhb) → new_compare13(vyw83, vyw84, new_ltEs19(vyw83, vyw84, bhb), bhb)
new_ltEs6(vyw492, vyw502, ty_Double) → new_ltEs12(vyw492, vyw502)
new_primCompAux00(vyw77, GT) → GT
new_compare25(vyw118, vyw119, vyw120, vyw121, False, eca, ecb) → new_compare16(vyw118, vyw119, vyw120, vyw121, new_lt20(vyw118, vyw120, eca), new_asAs(new_esEs33(vyw118, vyw120, eca), new_ltEs22(vyw119, vyw121, ecb)), eca, ecb)
new_ltEs6(vyw492, vyw502, app(app(ty_@2, gh), ha)) → new_ltEs11(vyw492, vyw502, gh, ha)
new_primCmpInt(Pos(Zero), Pos(Zero)) → EQ
new_esEs36(vyw500, vyw3000, ty_Int) → new_esEs14(vyw500, vyw3000)
new_ltEs23(vyw491, vyw501, app(app(app(ty_@3, efa), efb), efc)) → new_ltEs5(vyw491, vyw501, efa, efb, efc)
new_compare112(vyw170, vyw171, vyw172, vyw173, vyw174, vyw175, True, vyw177, fcc, fcd, fce) → new_compare113(vyw170, vyw171, vyw172, vyw173, vyw174, vyw175, True, fcc, fcd, fce)
new_compare30(vyw50, vyw300, ty_Ordering) → new_compare6(vyw50, vyw300)
new_esEs22(Right(vyw500), Right(vyw3000), cdf, app(app(ty_Either, cec), ced)) → new_esEs22(vyw500, vyw3000, cec, ced)
new_primCmpInt(Neg(Succ(vyw500)), Pos(vyw300)) → LT
new_esEs7(vyw51, vyw301, ty_Double) → new_esEs17(vyw51, vyw301)
new_esEs18(False, False) → True

The set Q consists of the following terms:

new_compare9(True, False)
new_compare10(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_compare9(False, True)
new_compare12(Nothing, Nothing, x0)
new_compare210(x0, x1, False, x2, x3)
new_sr0(Integer(x0), Integer(x1))
new_esEs29(x0, x1, ty_@0)
new_esEs26(GT, GT)
new_esEs36(x0, x1, ty_@0)
new_ltEs8(Right(x0), Right(x1), x2, ty_Float)
new_lt21(x0, x1, app(ty_[], x2))
new_ltEs23(x0, x1, ty_Char)
new_esEs24(Just(x0), Just(x1), ty_Int)
new_lt6(x0, x1, ty_Int)
new_compare19(Left(x0), Left(x1), x2, x3)
new_ltEs19(x0, x1, ty_@0)
new_esEs31(x0, x1, app(app(ty_Either, x2), x3))
new_esEs7(x0, x1, app(app(ty_Either, x2), x3))
new_esEs26(EQ, GT)
new_esEs26(GT, EQ)
new_ltEs8(Left(x0), Left(x1), ty_Bool, x2)
new_ltEs8(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_ltEs20(x0, x1, ty_Integer)
new_esEs26(LT, LT)
new_ltEs10(Just(x0), Just(x1), ty_Float)
new_compare16(x0, x1, x2, x3, False, x4, x5, x6)
new_esEs34(x0, x1, ty_Int)
new_ltEs20(x0, x1, ty_Int)
new_esEs30(x0, x1, ty_Ordering)
new_gt(x0, x1, ty_Integer)
new_ltEs21(x0, x1, app(app(ty_Either, x2), x3))
new_compare17(x0, x1, x2, x3, False, x4, x5)
new_ltEs10(Just(x0), Just(x1), ty_Integer)
new_compare27(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_lt22(x0, x1, ty_Char)
new_ltEs19(x0, x1, app(ty_[], x2))
new_esEs20([], [], x0)
new_esEs27(x0, x1, app(app(ty_@2, x2), x3))
new_lt5(x0, x1, ty_@0)
new_esEs34(x0, x1, app(app(ty_@2, x2), x3))
new_lt21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs7(x0, x1, ty_Char)
new_esEs36(x0, x1, ty_Int)
new_gt(x0, x1, ty_Ordering)
new_ltEs19(x0, x1, ty_Integer)
new_ltEs8(Right(x0), Right(x1), x2, ty_Int)
new_gt(x0, x1, ty_Float)
new_esEs6(x0, x1, ty_Integer)
new_esEs27(x0, x1, ty_@0)
new_lt22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs22(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_ltEs10(Just(x0), Just(x1), ty_Int)
new_esEs29(x0, x1, ty_Bool)
new_esEs17(Double(x0, x1), Double(x2, x3))
new_esEs22(Right(x0), Right(x1), x2, ty_Integer)
new_lt24(x0, x1, ty_Ordering)
new_ltEs22(x0, x1, ty_Integer)
new_primMulInt(Neg(x0), Pos(x1))
new_primMulInt(Pos(x0), Neg(x1))
new_ltEs20(x0, x1, app(ty_Maybe, x2))
new_compare27(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_lt24(x0, x1, ty_Integer)
new_compare16(x0, x1, x2, x3, True, x4, x5, x6)
new_lt21(x0, x1, app(ty_Ratio, x2))
new_ltEs8(Right(x0), Right(x1), x2, ty_@0)
new_compare6(EQ, LT)
new_compare6(LT, EQ)
new_primCmpInt(Neg(Succ(x0)), Pos(x1))
new_primCmpInt(Pos(Succ(x0)), Neg(x1))
new_esEs27(x0, x1, ty_Integer)
new_esEs18(True, True)
new_lt21(x0, x1, ty_Integer)
new_esEs32(x0, x1, ty_Bool)
new_esEs9(x0, x1, ty_Integer)
new_esEs22(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs29(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs6(x0, x1, ty_Double)
new_esEs24(Just(x0), Just(x1), app(ty_Ratio, x2))
new_esEs36(x0, x1, app(ty_Maybe, x2))
new_primMulInt(Pos(x0), Pos(x1))
new_esEs16(@0, @0)
new_ltEs8(Left(x0), Left(x1), app(ty_[], x2), x3)
new_ltEs24(x0, x1, app(ty_Maybe, x2))
new_compare9(True, True)
new_compare30(x0, x1, app(ty_Maybe, x2))
new_esEs31(x0, x1, ty_Int)
new_ltEs8(Left(x0), Left(x1), ty_@0, x2)
new_ltEs20(x0, x1, app(ty_Ratio, x2))
new_esEs40(x0, x1, ty_Integer)
new_esEs4(x0, x1, app(ty_Ratio, x2))
new_lt6(x0, x1, ty_@0)
new_primCmpInt(Pos(Zero), Neg(Succ(x0)))
new_primCmpInt(Neg(Zero), Pos(Succ(x0)))
new_lt17(x0, x1)
new_esEs5(x0, x1, app(ty_[], x2))
new_gt(x0, x1, app(app(ty_Either, x2), x3))
new_lt5(x0, x1, app(ty_[], x2))
new_primMulInt(Neg(x0), Neg(x1))
new_esEs23(@2(x0, x1), @2(x2, x3), x4, x5)
new_ltEs17(False, False)
new_esEs36(x0, x1, ty_Bool)
new_esEs22(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_esEs10(x0, x1, ty_Integer)
new_ltEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primEqNat0(Zero, Zero)
new_compare15(x0, x1)
new_ltEs23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs37(x0, x1, ty_Integer)
new_esEs4(x0, x1, ty_Float)
new_esEs33(x0, x1, app(ty_Maybe, x2))
new_esEs7(x0, x1, ty_Float)
new_lt6(x0, x1, ty_Double)
new_ltEs13(EQ, EQ)
new_esEs29(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, ty_Integer)
new_ltEs23(x0, x1, ty_Double)
new_primMulNat0(Zero, Zero)
new_esEs24(Just(x0), Just(x1), ty_@0)
new_compare29(Integer(x0), Integer(x1))
new_esEs6(x0, x1, ty_Double)
new_esEs12(LT)
new_ltEs22(x0, x1, app(app(ty_@2, x2), x3))
new_esEs33(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs28(x0, x1, ty_Ordering)
new_esEs22(Right(x0), Right(x1), x2, ty_Float)
new_esEs11(x0, x1, app(ty_Ratio, x2))
new_primEqInt(Pos(Zero), Neg(Succ(x0)))
new_primEqInt(Neg(Zero), Pos(Succ(x0)))
new_lt22(x0, x1, ty_Int)
new_esEs6(x0, x1, app(ty_Maybe, x2))
new_esEs35(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs14(x0, x1)
new_esEs35(x0, x1, app(ty_[], x2))
new_esEs8(x0, x1, ty_Float)
new_esEs24(Just(x0), Just(x1), app(ty_Maybe, x2))
new_esEs8(x0, x1, app(app(ty_Either, x2), x3))
new_gt(x0, x1, ty_Char)
new_lt4(x0, x1)
new_esEs32(x0, x1, app(ty_Maybe, x2))
new_ltEs13(EQ, LT)
new_ltEs13(LT, EQ)
new_ltEs20(x0, x1, app(ty_[], x2))
new_ltEs21(x0, x1, ty_Float)
new_lt21(x0, x1, ty_Char)
new_lt24(x0, x1, ty_@0)
new_esEs35(x0, x1, ty_Double)
new_ltEs8(Left(x0), Left(x1), app(app(app(ty_@3, x2), x3), x4), x5)
new_esEs9(x0, x1, ty_Char)
new_ltEs6(x0, x1, ty_Float)
new_ltEs20(x0, x1, ty_Bool)
new_primPlusNat1(Zero, Succ(x0))
new_esEs35(x0, x1, ty_Integer)
new_primCompAux0(x0, x1, x2, x3)
new_ltEs8(Right(x0), Right(x1), x2, ty_Integer)
new_primPlusNat0(Succ(x0), x1)
new_lt10(x0, x1, x2)
new_compare30(x0, x1, ty_Int)
new_lt5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs18(False, False)
new_esEs11(x0, x1, ty_Ordering)
new_esEs22(Right(x0), Right(x1), x2, ty_Char)
new_compare0([], [], x0)
new_esEs28(x0, x1, ty_Float)
new_esEs9(x0, x1, app(app(ty_@2, x2), x3))
new_lt24(x0, x1, app(ty_Ratio, x2))
new_lt8(x0, x1, x2, x3)
new_ltEs8(Left(x0), Left(x1), ty_Char, x2)
new_lt23(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs23(x0, x1, ty_Integer)
new_primCmpInt(Neg(Succ(x0)), Neg(x1))
new_esEs22(Right(x0), Right(x1), x2, ty_Bool)
new_compare11(Char(x0), Char(x1))
new_esEs10(x0, x1, app(ty_Maybe, x2))
new_lt23(x0, x1, ty_Char)
new_esEs27(x0, x1, ty_Float)
new_esEs30(x0, x1, ty_Double)
new_lt6(x0, x1, ty_Char)
new_esEs5(x0, x1, ty_Ordering)
new_ltEs19(x0, x1, ty_Ordering)
new_esEs30(x0, x1, app(ty_Ratio, x2))
new_ltEs8(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_ltEs24(x0, x1, ty_Int)
new_esEs32(x0, x1, ty_@0)
new_esEs37(x0, x1, ty_Float)
new_esEs11(x0, x1, app(app(ty_@2, x2), x3))
new_compare28(x0, x1, True, x2, x3)
new_esEs27(x0, x1, ty_Bool)
new_ltEs15(x0, x1)
new_esEs24(Just(x0), Just(x1), ty_Bool)
new_esEs20(:(x0, x1), :(x2, x3), x4)
new_lt24(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, ty_Bool)
new_lt21(x0, x1, ty_Double)
new_esEs6(x0, x1, ty_Float)
new_ltEs10(Nothing, Nothing, x0)
new_esEs27(x0, x1, app(ty_Maybe, x2))
new_esEs11(x0, x1, ty_Int)
new_ltEs6(x0, x1, app(app(ty_Either, x2), x3))
new_esEs22(Left(x0), Left(x1), ty_@0, x2)
new_esEs32(x0, x1, ty_Double)
new_lt23(x0, x1, ty_@0)
new_esEs33(x0, x1, app(ty_Ratio, x2))
new_esEs28(x0, x1, ty_@0)
new_esEs7(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs28(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, ty_Float)
new_ltEs12(x0, x1)
new_esEs7(x0, x1, ty_Bool)
new_ltEs23(x0, x1, app(ty_[], x2))
new_esEs36(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt6(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs24(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_esEs8(x0, x1, app(ty_[], x2))
new_ltEs20(x0, x1, ty_Double)
new_esEs8(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_Float)
new_ltEs23(x0, x1, ty_Float)
new_ltEs19(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, ty_@0)
new_esEs6(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs18(x0, x1, x2)
new_esEs11(x0, x1, app(ty_[], x2))
new_ltEs13(GT, EQ)
new_ltEs13(EQ, GT)
new_gt(x0, x1, ty_Double)
new_lt5(x0, x1, ty_Double)
new_compare18(:%(x0, x1), :%(x2, x3), ty_Int)
new_esEs39(x0, x1, ty_Integer)
new_esEs8(x0, x1, app(app(ty_@2, x2), x3))
new_esEs37(x0, x1, ty_Char)
new_ltEs24(x0, x1, ty_Float)
new_esEs38(x0, x1, ty_Bool)
new_lt23(x0, x1, app(ty_Maybe, x2))
new_compare0(:(x0, x1), :(x2, x3), x4)
new_esEs37(x0, x1, ty_Bool)
new_esEs31(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, ty_Integer)
new_primEqInt(Pos(Succ(x0)), Pos(Succ(x1)))
new_esEs4(x0, x1, app(ty_Maybe, x2))
new_ltEs23(x0, x1, app(app(ty_@2, x2), x3))
new_esEs22(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_esEs31(x0, x1, ty_Char)
new_ltEs7(x0, x1)
new_pePe(False, x0)
new_esEs38(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_Integer)
new_primCmpInt(Pos(Zero), Pos(Zero))
new_ltEs8(Right(x0), Right(x1), x2, ty_Bool)
new_esEs37(x0, x1, app(ty_Ratio, x2))
new_esEs26(LT, GT)
new_esEs26(GT, LT)
new_ltEs22(x0, x1, app(ty_[], x2))
new_ltEs24(x0, x1, ty_Bool)
new_ltEs22(x0, x1, ty_Double)
new_primEqNat0(Zero, Succ(x0))
new_esEs5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primEqInt(Neg(Zero), Neg(Zero))
new_esEs37(x0, x1, ty_Ordering)
new_lt24(x0, x1, ty_Int)
new_esEs38(x0, x1, ty_Double)
new_lt7(x0, x1)
new_esEs22(Left(x0), Left(x1), ty_Char, x2)
new_lt21(x0, x1, app(ty_Maybe, x2))
new_primEqNat0(Succ(x0), Succ(x1))
new_lt23(x0, x1, ty_Integer)
new_lt21(x0, x1, ty_Bool)
new_esEs24(Just(x0), Just(x1), ty_Char)
new_lt5(x0, x1, ty_Ordering)
new_lt14(x0, x1)
new_esEs37(x0, x1, ty_Double)
new_ltEs22(x0, x1, ty_@0)
new_esEs29(x0, x1, ty_Ordering)
new_ltEs22(x0, x1, app(ty_Maybe, x2))
new_esEs39(x0, x1, ty_Int)
new_ltEs23(x0, x1, ty_Bool)
new_lt22(x0, x1, app(ty_[], x2))
new_ltEs20(x0, x1, ty_Ordering)
new_lt23(x0, x1, ty_Bool)
new_ltEs23(x0, x1, ty_@0)
new_esEs30(x0, x1, app(ty_[], x2))
new_lt23(x0, x1, ty_Double)
new_ltEs23(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs21(x0, x1, ty_Int)
new_esEs10(x0, x1, app(ty_[], x2))
new_ltEs19(x0, x1, ty_Double)
new_esEs10(x0, x1, ty_Int)
new_esEs38(x0, x1, app(ty_Maybe, x2))
new_esEs31(x0, x1, app(app(ty_@2, x2), x3))
new_compare113(x0, x1, x2, x3, x4, x5, True, x6, x7, x8)
new_ltEs10(Just(x0), Just(x1), ty_Bool)
new_esEs6(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs8(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_ltEs8(Left(x0), Left(x1), app(app(ty_@2, x2), x3), x4)
new_lt21(x0, x1, ty_Int)
new_esEs5(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Zero), Pos(Succ(x0)))
new_esEs34(x0, x1, ty_Bool)
new_ltEs8(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_ltEs20(x0, x1, ty_@0)
new_esEs30(x0, x1, ty_@0)
new_esEs37(x0, x1, ty_Int)
new_compare25(x0, x1, x2, x3, False, x4, x5)
new_esEs8(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_primCompAux00(x0, GT)
new_esEs32(x0, x1, ty_Char)
new_esEs7(x0, x1, ty_@0)
new_esEs36(x0, x1, app(app(ty_@2, x2), x3))
new_lt6(x0, x1, app(ty_Maybe, x2))
new_esEs11(x0, x1, ty_Integer)
new_primMulNat0(Succ(x0), Succ(x1))
new_primPlusNat1(Succ(x0), Succ(x1))
new_esEs25(:%(x0, x1), :%(x2, x3), x4)
new_lt21(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, app(ty_Maybe, x2))
new_esEs36(x0, x1, ty_Double)
new_esEs38(x0, x1, app(app(ty_Either, x2), x3))
new_esEs26(EQ, EQ)
new_esEs36(x0, x1, ty_Ordering)
new_primEqInt(Neg(Succ(x0)), Neg(Succ(x1)))
new_primPlusNat1(Succ(x0), Zero)
new_esEs10(x0, x1, ty_Float)
new_primPlusNat0(Zero, x0)
new_esEs31(x0, x1, app(ty_Ratio, x2))
new_esEs32(x0, x1, app(ty_Ratio, x2))
new_ltEs8(Left(x0), Left(x1), ty_Int, x2)
new_lt22(x0, x1, ty_@0)
new_esEs6(x0, x1, ty_Char)
new_ltEs21(x0, x1, ty_Char)
new_lt5(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, app(ty_Maybe, x2))
new_esEs34(x0, x1, app(app(ty_Either, x2), x3))
new_esEs27(x0, x1, ty_Char)
new_ltEs13(GT, GT)
new_esEs10(x0, x1, app(app(ty_Either, x2), x3))
new_esEs34(x0, x1, app(ty_Maybe, x2))
new_lt6(x0, x1, ty_Integer)
new_esEs7(x0, x1, ty_Ordering)
new_esEs37(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs28(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_Float)
new_esEs28(x0, x1, app(ty_[], x2))
new_esEs36(x0, x1, ty_Integer)
new_esEs10(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare111(x0, x1, True, x2, x3)
new_not(True)
new_esEs7(x0, x1, app(ty_Maybe, x2))
new_esEs9(x0, x1, app(app(ty_Either, x2), x3))
new_esEs24(Nothing, Nothing, x0)
new_primCmpInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Pos(Zero))
new_ltEs8(Left(x0), Left(x1), ty_Double, x2)
new_not(False)
new_lt6(x0, x1, app(ty_[], x2))
new_primCmpNat0(Succ(x0), Succ(x1))
new_lt22(x0, x1, ty_Bool)
new_esEs7(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs6(x0, x1, ty_Ordering)
new_esEs10(x0, x1, ty_Ordering)
new_ltEs22(x0, x1, ty_Ordering)
new_ltEs17(False, True)
new_ltEs17(True, False)
new_lt20(x0, x1, ty_Ordering)
new_esEs24(Nothing, Just(x0), x1)
new_esEs26(LT, EQ)
new_esEs26(EQ, LT)
new_esEs12(EQ)
new_ltEs24(x0, x1, app(ty_Ratio, x2))
new_compare28(x0, x1, False, x2, x3)
new_esEs34(x0, x1, ty_Ordering)
new_esEs22(Left(x0), Left(x1), app(app(ty_Either, x2), x3), x4)
new_esEs22(Left(x0), Left(x1), app(ty_Ratio, x2), x3)
new_lt23(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_@0)
new_esEs5(x0, x1, app(app(ty_@2, x2), x3))
new_esEs38(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt6(x0, x1, ty_Ordering)
new_esEs35(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs28(x0, x1, app(ty_Maybe, x2))
new_ltEs5(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs36(x0, x1, app(app(ty_Either, x2), x3))
new_lt24(x0, x1, ty_Bool)
new_ltEs10(Just(x0), Nothing, x1)
new_esEs4(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs22(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs8(x0, x1, ty_Bool)
new_lt24(x0, x1, ty_Double)
new_esEs5(x0, x1, ty_Double)
new_esEs13(Float(x0, x1), Float(x2, x3))
new_ltEs10(Just(x0), Just(x1), ty_Double)
new_esEs10(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_Integer)
new_esEs12(GT)
new_compare18(:%(x0, x1), :%(x2, x3), ty_Integer)
new_primEqInt(Pos(Zero), Pos(Zero))
new_esEs5(x0, x1, ty_Bool)
new_esEs36(x0, x1, ty_Float)
new_esEs31(x0, x1, ty_Ordering)
new_compare6(GT, EQ)
new_compare6(EQ, GT)
new_lt16(x0, x1)
new_esEs37(x0, x1, app(ty_Maybe, x2))
new_gt(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, ty_@0)
new_primMulNat0(Zero, Succ(x0))
new_esEs20(:(x0, x1), [], x2)
new_compare113(x0, x1, x2, x3, x4, x5, False, x6, x7, x8)
new_compare9(False, False)
new_esEs7(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, app(app(ty_@2, x2), x3))
new_esEs22(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_ltEs6(x0, x1, app(ty_[], x2))
new_primCmpNat0(Zero, Succ(x0))
new_ltEs21(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, ty_Double)
new_esEs38(x0, x1, ty_Int)
new_esEs24(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_esEs29(x0, x1, ty_Int)
new_esEs36(x0, x1, ty_Char)
new_esEs30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs8(Right(x0), Right(x1), x2, app(ty_[], x3))
new_lt20(x0, x1, ty_Double)
new_gt(x0, x1, app(ty_Ratio, x2))
new_ltEs6(x0, x1, app(ty_Maybe, x2))
new_ltEs8(Right(x0), Right(x1), x2, ty_Ordering)
new_esEs38(x0, x1, ty_@0)
new_esEs6(x0, x1, app(ty_[], x2))
new_lt6(x0, x1, ty_Bool)
new_compare112(x0, x1, x2, x3, x4, x5, False, x6, x7, x8, x9)
new_ltEs9(x0, x1, x2)
new_esEs6(x0, x1, ty_Ordering)
new_ltEs6(x0, x1, ty_Integer)
new_lt12(x0, x1, x2)
new_esEs32(x0, x1, ty_Integer)
new_asAs(False, x0)
new_esEs29(x0, x1, app(app(ty_@2, x2), x3))
new_lt5(x0, x1, app(app(ty_Either, x2), x3))
new_esEs27(x0, x1, ty_Double)
new_esEs9(x0, x1, app(ty_[], x2))
new_primEqInt(Neg(Succ(x0)), Neg(Zero))
new_esEs8(x0, x1, app(ty_Ratio, x2))
new_ltEs24(x0, x1, ty_Double)
new_compare12(Just(x0), Nothing, x1)
new_compare12(Nothing, Just(x0), x1)
new_ltEs10(Just(x0), Just(x1), app(app(app(ty_@3, x2), x3), x4))
new_compare14(Double(x0, x1), Double(x2, x3))
new_pePe(True, x0)
new_esEs29(x0, x1, ty_Double)
new_lt24(x0, x1, app(ty_Maybe, x2))
new_gt(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs23(x0, x1, app(ty_Ratio, x2))
new_esEs31(x0, x1, app(ty_[], x2))
new_gt(x0, x1, ty_Int)
new_ltEs21(x0, x1, ty_Double)
new_lt13(x0, x1, x2, x3)
new_gt(x0, x1, app(ty_[], x2))
new_esEs33(x0, x1, app(ty_[], x2))
new_esEs22(Left(x0), Left(x1), ty_Float, x2)
new_compare0(:(x0, x1), [], x2)
new_ltEs10(Just(x0), Just(x1), app(ty_Maybe, x2))
new_ltEs22(x0, x1, ty_Char)
new_compare19(Right(x0), Right(x1), x2, x3)
new_ltEs19(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs21(x0, x1, ty_Bool)
new_ltEs8(Right(x0), Right(x1), x2, app(ty_Ratio, x3))
new_esEs8(x0, x1, ty_@0)
new_ltEs21(x0, x1, app(ty_Maybe, x2))
new_compare110(x0, x1, False, x2, x3)
new_esEs9(x0, x1, ty_Ordering)
new_lt6(x0, x1, app(app(ty_Either, x2), x3))
new_compare110(x0, x1, True, x2, x3)
new_compare30(x0, x1, ty_Bool)
new_esEs4(x0, x1, ty_Int)
new_esEs28(x0, x1, ty_Bool)
new_lt22(x0, x1, ty_Double)
new_esEs31(x0, x1, ty_Double)
new_ltEs19(x0, x1, ty_Int)
new_ltEs23(x0, x1, ty_Int)
new_esEs33(x0, x1, app(app(ty_@2, x2), x3))
new_esEs31(x0, x1, app(ty_Maybe, x2))
new_primEqNat0(Succ(x0), Zero)
new_ltEs24(x0, x1, ty_Ordering)
new_esEs30(x0, x1, app(app(ty_Either, x2), x3))
new_lt20(x0, x1, ty_Int)
new_esEs22(Left(x0), Left(x1), ty_Ordering, x2)
new_esEs32(x0, x1, app(app(ty_@2, x2), x3))
new_compare5(@0, @0)
new_esEs24(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs38(x0, x1, ty_Integer)
new_lt20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs8(x0, x1, ty_Ordering)
new_ltEs8(Right(x0), Right(x1), x2, app(app(app(ty_@3, x3), x4), x5))
new_esEs27(x0, x1, app(ty_[], x2))
new_lt20(x0, x1, ty_Char)
new_esEs19(Char(x0), Char(x1))
new_esEs11(x0, x1, ty_Double)
new_esEs38(x0, x1, ty_Float)
new_esEs9(x0, x1, ty_@0)
new_compare30(x0, x1, ty_Double)
new_lt22(x0, x1, ty_Integer)
new_esEs30(x0, x1, ty_Bool)
new_compare12(Just(x0), Just(x1), x2)
new_lt22(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs6(x0, x1, ty_Int)
new_esEs7(x0, x1, ty_Double)
new_esEs11(x0, x1, app(ty_Maybe, x2))
new_ltEs24(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs21(x0, x1, ty_Ordering)
new_esEs10(x0, x1, app(app(ty_@2, x2), x3))
new_lt23(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare13(x0, x1, False, x2)
new_esEs10(x0, x1, app(ty_Ratio, x2))
new_ltEs20(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs10(Just(x0), Just(x1), app(app(ty_@2, x2), x3))
new_sr(x0, x1)
new_esEs40(x0, x1, ty_Int)
new_esEs22(Right(x0), Right(x1), x2, ty_@0)
new_esEs22(Right(x0), Right(x1), x2, ty_Ordering)
new_lt5(x0, x1, ty_Bool)
new_compare112(x0, x1, x2, x3, x4, x5, True, x6, x7, x8, x9)
new_esEs33(x0, x1, ty_@0)
new_lt5(x0, x1, ty_Float)
new_esEs35(x0, x1, ty_Float)
new_esEs5(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs6(x0, x1, ty_Bool)
new_compare0([], :(x0, x1), x2)
new_esEs22(Right(x0), Right(x1), x2, ty_Int)
new_ltEs17(True, True)
new_ltEs8(Left(x0), Left(x1), app(ty_Maybe, x2), x3)
new_esEs29(x0, x1, app(ty_[], x2))
new_esEs24(Just(x0), Just(x1), ty_Float)
new_compare26(x0, x1, False, x2)
new_esEs9(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs7(x0, x1, ty_Int)
new_lt24(x0, x1, ty_Float)
new_ltEs6(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs10(Just(x0), Just(x1), app(ty_Ratio, x2))
new_primCmpNat0(Succ(x0), Zero)
new_ltEs8(Right(x0), Right(x1), x2, app(app(ty_@2, x3), x4))
new_esEs29(x0, x1, ty_Char)
new_esEs31(x0, x1, ty_@0)
new_esEs38(x0, x1, ty_Char)
new_compare17(x0, x1, x2, x3, True, x4, x5)
new_lt23(x0, x1, app(app(ty_@2, x2), x3))
new_compare26(x0, x1, True, x2)
new_esEs9(x0, x1, ty_Float)
new_ltEs16(x0, x1)
new_lt20(x0, x1, app(ty_Ratio, x2))
new_compare6(EQ, EQ)
new_compare30(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs9(x0, x1, app(ty_Maybe, x2))
new_esEs41(GT)
new_esEs10(x0, x1, ty_Bool)
new_compare6(LT, GT)
new_esEs22(Right(x0), Right(x1), x2, app(ty_[], x3))
new_compare6(GT, LT)
new_esEs20([], :(x0, x1), x2)
new_esEs4(x0, x1, ty_@0)
new_ltEs19(x0, x1, app(ty_Maybe, x2))
new_primMulNat0(Succ(x0), Zero)
new_compare13(x0, x1, True, x2)
new_esEs6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare6(LT, LT)
new_esEs35(x0, x1, app(app(ty_@2, x2), x3))
new_lt22(x0, x1, app(ty_Maybe, x2))
new_esEs34(x0, x1, app(ty_[], x2))
new_esEs24(Just(x0), Just(x1), ty_Double)
new_esEs7(x0, x1, ty_Integer)
new_ltEs8(Left(x0), Right(x1), x2, x3)
new_ltEs8(Right(x0), Left(x1), x2, x3)
new_esEs38(x0, x1, app(ty_Ratio, x2))
new_esEs28(x0, x1, ty_Integer)
new_lt5(x0, x1, app(ty_Maybe, x2))
new_primCmpInt(Pos(Succ(x0)), Pos(x1))
new_lt23(x0, x1, ty_Ordering)
new_ltEs10(Just(x0), Just(x1), app(app(ty_Either, x2), x3))
new_esEs11(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, ty_Char)
new_esEs27(x0, x1, app(app(ty_Either, x2), x3))
new_primPlusNat1(Zero, Zero)
new_esEs22(Right(x0), Right(x1), x2, ty_Double)
new_lt21(x0, x1, ty_Ordering)
new_esEs22(Right(x0), Right(x1), x2, app(ty_Maybe, x3))
new_lt5(x0, x1, ty_Char)
new_lt19(x0, x1, x2)
new_esEs22(Left(x0), Left(x1), ty_Int, x2)
new_esEs35(x0, x1, ty_Int)
new_esEs35(x0, x1, ty_Ordering)
new_lt6(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs24(x0, x1, ty_Char)
new_esEs4(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs10(Just(x0), Just(x1), ty_@0)
new_ltEs24(x0, x1, app(ty_[], x2))
new_primCmpInt(Neg(Zero), Neg(Zero))
new_compare7(@2(x0, x1), @2(x2, x3), x4, x5)
new_primCompAux00(x0, LT)
new_compare30(x0, x1, ty_Float)
new_lt20(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs24(x0, x1, ty_@0)
new_ltEs19(x0, x1, app(ty_Ratio, x2))
new_esEs34(x0, x1, ty_Char)
new_lt21(x0, x1, app(app(ty_@2, x2), x3))
new_esEs41(EQ)
new_ltEs21(x0, x1, app(ty_Ratio, x2))
new_compare25(x0, x1, x2, x3, True, x4, x5)
new_primEqInt(Pos(Zero), Pos(Succ(x0)))
new_esEs11(x0, x1, ty_Bool)
new_ltEs24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt11(x0, x1)
new_esEs36(x0, x1, app(ty_Ratio, x2))
new_esEs11(x0, x1, ty_@0)
new_gt(x0, x1, app(ty_Maybe, x2))
new_esEs32(x0, x1, app(ty_[], x2))
new_esEs8(x0, x1, ty_Int)
new_esEs28(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare111(x0, x1, False, x2, x3)
new_fsEs(x0)
new_ltEs22(x0, x1, ty_Bool)
new_esEs14(x0, x1)
new_gt(x0, x1, ty_@0)
new_esEs33(x0, x1, ty_Int)
new_primEqInt(Neg(Zero), Pos(Zero))
new_primEqInt(Pos(Zero), Neg(Zero))
new_primCmpInt(Neg(Zero), Neg(Succ(x0)))
new_ltEs6(x0, x1, ty_@0)
new_esEs10(x0, x1, ty_@0)
new_esEs28(x0, x1, ty_Int)
new_esEs33(x0, x1, ty_Double)
new_esEs28(x0, x1, ty_Char)
new_ltEs8(Left(x0), Left(x1), ty_Ordering, x2)
new_ltEs13(LT, GT)
new_ltEs13(GT, LT)
new_ltEs20(x0, x1, app(app(ty_@2, x2), x3))
new_esEs9(x0, x1, ty_Bool)
new_esEs27(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs6(x0, x1, ty_@0)
new_esEs28(x0, x1, app(ty_Ratio, x2))
new_esEs18(False, True)
new_esEs18(True, False)
new_esEs9(x0, x1, ty_Int)
new_primEqInt(Pos(Succ(x0)), Pos(Zero))
new_esEs22(Right(x0), Right(x1), x2, app(app(ty_Either, x3), x4))
new_compare30(x0, x1, ty_Char)
new_ltEs22(x0, x1, app(ty_Ratio, x2))
new_esEs6(x0, x1, ty_Int)
new_esEs6(x0, x1, ty_Bool)
new_esEs8(x0, x1, ty_Double)
new_esEs35(x0, x1, app(ty_Ratio, x2))
new_compare30(x0, x1, app(ty_[], x2))
new_ltEs22(x0, x1, ty_Int)
new_lt22(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs20(x0, x1, ty_Float)
new_ltEs21(x0, x1, ty_@0)
new_esEs27(x0, x1, ty_Ordering)
new_esEs4(x0, x1, app(ty_[], x2))
new_ltEs6(x0, x1, app(ty_Ratio, x2))
new_ltEs4(x0, x1)
new_lt5(x0, x1, ty_Integer)
new_esEs24(Just(x0), Just(x1), app(ty_[], x2))
new_esEs4(x0, x1, ty_Ordering)
new_lt5(x0, x1, ty_Int)
new_esEs7(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs11(@2(x0, x1), @2(x2, x3), x4, x5)
new_esEs11(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs27(x0, x1, ty_Int)
new_esEs5(x0, x1, app(ty_Ratio, x2))
new_esEs32(x0, x1, ty_Float)
new_esEs35(x0, x1, ty_Bool)
new_esEs5(x0, x1, ty_Integer)
new_lt6(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare8(Float(x0, x1), Float(x2, x3))
new_esEs32(x0, x1, app(app(ty_Either, x2), x3))
new_esEs21(Integer(x0), Integer(x1))
new_lt23(x0, x1, app(ty_[], x2))
new_compare30(x0, x1, ty_@0)
new_primCompAux00(x0, EQ)
new_esEs29(x0, x1, ty_Integer)
new_lt24(x0, x1, app(ty_[], x2))
new_lt5(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_compare19(Right(x0), Left(x1), x2, x3)
new_compare19(Left(x0), Right(x1), x2, x3)
new_esEs5(x0, x1, ty_@0)
new_esEs24(Just(x0), Just(x1), ty_Integer)
new_lt6(x0, x1, ty_Float)
new_esEs32(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_gt(x0, x1, ty_Bool)
new_esEs24(Just(x0), Nothing, x1)
new_lt24(x0, x1, ty_Char)
new_esEs37(x0, x1, app(app(ty_@2, x2), x3))
new_lt20(x0, x1, ty_Bool)
new_esEs38(x0, x1, ty_Ordering)
new_ltEs24(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs19(x0, x1, ty_Char)
new_esEs32(x0, x1, ty_Int)
new_esEs32(x0, x1, ty_Ordering)
new_primCmpNat0(Zero, Zero)
new_compare30(x0, x1, app(ty_Ratio, x2))
new_lt20(x0, x1, app(ty_[], x2))
new_esEs31(x0, x1, ty_Bool)
new_esEs35(x0, x1, ty_Char)
new_esEs37(x0, x1, app(app(ty_Either, x2), x3))
new_esEs30(x0, x1, ty_Float)
new_ltEs13(LT, LT)
new_lt22(x0, x1, ty_Float)
new_esEs33(x0, x1, ty_Integer)
new_ltEs20(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_lt15(x0, x1)
new_esEs22(Left(x0), Left(x1), ty_Double, x2)
new_ltEs10(Nothing, Just(x0), x1)
new_asAs(True, x0)
new_compare210(x0, x1, True, x2, x3)
new_esEs5(x0, x1, ty_Char)
new_ltEs10(Just(x0), Just(x1), ty_Ordering)
new_esEs22(Left(x0), Left(x1), ty_Bool, x2)
new_esEs28(x0, x1, app(app(ty_@2, x2), x3))
new_lt22(x0, x1, app(ty_Ratio, x2))
new_esEs22(Left(x0), Left(x1), ty_Integer, x2)
new_lt9(x0, x1, x2, x3, x4)
new_esEs30(x0, x1, ty_Int)
new_esEs34(x0, x1, app(ty_Ratio, x2))
new_esEs27(x0, x1, app(ty_Ratio, x2))
new_esEs36(x0, x1, app(ty_[], x2))
new_esEs30(x0, x1, ty_Integer)
new_esEs34(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_ltEs10(Just(x0), Just(x1), ty_Char)
new_ltEs23(x0, x1, app(ty_Maybe, x2))
new_esEs41(LT)
new_lt20(x0, x1, ty_Integer)
new_esEs4(x0, x1, ty_Double)
new_esEs4(x0, x1, ty_Char)
new_esEs29(x0, x1, ty_Float)
new_esEs22(Left(x0), Right(x1), x2, x3)
new_esEs22(Right(x0), Left(x1), x2, x3)
new_lt24(x0, x1, app(app(ty_@2, x2), x3))
new_esEs29(x0, x1, app(ty_Ratio, x2))
new_esEs33(x0, x1, ty_Bool)
new_lt21(x0, x1, ty_@0)
new_lt23(x0, x1, ty_Float)
new_esEs31(x0, x1, ty_Float)
new_lt21(x0, x1, ty_Float)
new_ltEs8(Left(x0), Left(x1), ty_Float, x2)
new_ltEs21(x0, x1, app(app(ty_@2, x2), x3))
new_lt22(x0, x1, ty_Ordering)
new_esEs33(x0, x1, app(app(ty_Either, x2), x3))
new_esEs33(x0, x1, ty_Float)
new_ltEs8(Right(x0), Right(x1), x2, ty_Double)
new_compare6(GT, GT)
new_ltEs6(x0, x1, ty_Char)
new_compare30(x0, x1, ty_Integer)
new_esEs5(x0, x1, ty_Int)
new_esEs8(x0, x1, ty_Integer)
new_lt23(x0, x1, app(ty_Ratio, x2))
new_esEs30(x0, x1, ty_Char)
new_ltEs20(x0, x1, ty_Char)
new_esEs34(x0, x1, ty_Double)
new_esEs29(x0, x1, app(ty_Maybe, x2))
new_ltEs8(Right(x0), Right(x1), x2, ty_Char)
new_ltEs10(Just(x0), Just(x1), app(ty_[], x2))
new_esEs15(@3(x0, x1, x2), @3(x3, x4, x5), x6, x7, x8)
new_esEs6(x0, x1, app(ty_Ratio, x2))
new_esEs9(x0, x1, app(ty_Ratio, x2))
new_esEs10(x0, x1, ty_Double)
new_ltEs23(x0, x1, ty_Ordering)
new_compare30(x0, x1, app(app(ty_Either, x2), x3))
new_ltEs19(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs22(x0, x1, ty_Float)
new_ltEs21(x0, x1, app(ty_[], x2))
new_esEs24(Just(x0), Just(x1), ty_Ordering)
new_ltEs19(x0, x1, ty_Bool)
new_esEs11(x0, x1, ty_Char)
new_esEs38(x0, x1, app(app(ty_@2, x2), x3))
new_lt24(x0, x1, app(app(app(ty_@3, x2), x3), x4))
new_esEs33(x0, x1, ty_Ordering)
new_ltEs8(Left(x0), Left(x1), ty_Integer, x2)
new_esEs8(x0, x1, app(ty_Maybe, x2))
new_lt18(x0, x1)
new_ltEs19(x0, x1, ty_Float)
new_primEqInt(Neg(Succ(x0)), Pos(x1))
new_primEqInt(Pos(Succ(x0)), Neg(x1))
new_primEqInt(Neg(Zero), Neg(Succ(x0)))
new_esEs37(x0, x1, ty_@0)
new_esEs11(x0, x1, ty_Float)
new_esEs37(x0, x1, app(ty_[], x2))
new_esEs22(Left(x0), Left(x1), app(ty_[], x2), x3)
new_compare30(x0, x1, ty_Ordering)
new_compare30(x0, x1, app(app(ty_@2, x2), x3))
new_ltEs24(x0, x1, ty_Integer)
new_esEs35(x0, x1, app(ty_Maybe, x2))
new_ltEs22(x0, x1, app(app(ty_Either, x2), x3))
new_esEs4(x0, x1, app(app(ty_Either, x2), x3))

We have to consider all minimal (P,Q,R)-chains.
By using the subterm criterion [20] together with the size-change analysis [32] we have proven that there are no infinite chains for this DP problem.

From the DPs we obtained the following set of size-change graphs: